Pythonのお勉強 Part72
■ このスレッドは過去ログ倉庫に格納されています
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。
・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
エラー文(勝手に省略orスクショうp等の横着禁止)と
おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。
★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/ Run Code機能あり。
ttp://ideone.com/ デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Pythonオフィシャルサイト http://www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/
※前スレ
Pythonのお勉強 Part71
https://mevius.5ch.net/test/read.cgi/tech/1695168821/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured 教育関係って言っても高卒の校長教頭の事務ITサポートだから
学力の低さと日本語能力は簡便してください
html、css、javascriptは習いましたが
学校出てからは全然書いてません
Webアプリケーション作るのにPythonが最適解で無いのだけは伝わりました
もうちょっと調べます >>517
いや学校の教師だけが使う程度ならpythonで十分
問題は買った方が安いのを自分で作ればと勘違いしてる点
不具合対応や追加機能
インフラ整備
教職員への操作説明
そもそもの開発作業
どう考えても買った方が安いです 職場で使うことをターゲットにするなら買ってる部分以外にした方がいいと思うけど
まだ何にも作ってないなら、とりあえず買ってるものでも何でも動くもの作ってみたらいいんじゃね
ただ、確実に予算はつかないから職場で勝手につくるのと、職場から勝手に個人情報に限らずデータを持ち出すのはやめとけよ 仮に有用なものができたとしても事故か何かで突然作者が維持できなくなった時のことを考慮できるかというのが内製の一番の課題では?
その場合に予算つけて外に投げたとして業務を知らない赤の他人が処理を追える程度のコメントやドキュメントを維持することができるのかどうかとか まあ高校の情報処理でプログラミングしか勉強してないから運用とか保守とか事業継続とかそういう視点が分からんのだろうね
だから自分で作れたら買う必要が無いって変な思考になってる 売ってるなら買えばいい
売ってないような細かい便利ツールが作れると仕事や趣味に役立つ
どうやっても本業にはならない >成績推移管理、内申点管理、進路希望管理
この辺なら個人レベルで済むからpythonでstreamlit辺りでツールとして作るのは有り
俺だったらプログラミングの部活を作るかな
部活としてプログラミングを教え更に作品として学校関係のシステムを徐々に構築していく
代々の部員が機能追加しつつ修正しつつ作り直ししつつと受け継がれていく 全部Excelでいいだろ。
進路希望管理とか、紙で提出された内容を入力するだけじゃないの? >>523
お前も似たりよったりのレベルじゃねーかwww
そもそも事務ITサポートサービスを提供してる会社の人間に部活作れるわけないじゃん 学校教育で教えるならJavaかc++だろう
Pythonはかゆいところがありすぎて結果的に自作ライブラリになってしまう。
サードパーティライブラリでできない事がまだまだ多いのでもっと楽させてくれ。 >>526
何言ってんだお前?
高校の教科書見た事ないのか? >>527
見たことあるがそれがどうかしたか?
itssレベル1の内容程度のことばかりなので
javaもしくはc++やってほしいなって話なんだが >>529
ありえない
やってもC言語
何故が分からないなら無能 明治時代の数学の教科書とか見ると、今と内容は同じ
ひらがながカタカナになってるだけ
学問ってのはそういうもんだ
普遍的な知識でないといけない このスレってPython以外の話になるとスレが伸びるよね(´・ω・`) 結局Cになってしまうのか、でポインターってなんですかあ?から始まるのよな。
NiftyのCのフォーラムで同じ事が繰り返し聞かれるけど根気よく答えましょう、とか主が言ってたな。皆頑張れよ!ああジジイだよ。 >>532
基地外がよってくるからな
一切構わず無視してNG推奨 Numpy と PyTorch では多言語の追従を許さないじゃん >>511
>勤怠管理、社内チャットツール、顧客管理、商品管理
Excel/VBA かRuby on Rails で、データベースもいるのか?
>成績推移管理、内申点管理、進路希望管理
統計・図なら、VBAかPython。
Rubyでも、HTML, CSS, JavaScript(JS)で図も描ける
そりゃ、高校ではPythonかJSになる。
でも職場では、VBA
それ以上のデータベースを使ったシステムなら、Rails。
AI・機械学習なら、Python
3大プログラマー投稿サイト、Qiita, Zenn, Note はRails製。
他にも、Shopify, Airbnb, Cookpad, Github, Gitlab, Hulu なども そこらのお手軽環境でLispやSmalltalk並の生産性誇るのはRailsくらいだけど
品質や保守性かんがえると自社サービスでギーク抱えてないと無謀 掌田津耶乃のFlask の本を見たけど、Ruby のSinatra に相当するもの。
Rails ほど大規模ではない感じ
Bootstrap, Vue.js, データベースなども使う
{{ 式・文 | フィルター }}
みたいに書くのは、Shopify のRuby製のLiquid に似た文法
まあでも、Python でウェブ系をやる意味はない。
KENTA も初心者のキャリアパスは、Rails → Go のみと言ってるし PythonでWeb系やれないやつがそう言ってるだけで実際は案件で一番多いのはPythonやからな
他にはPHPくらいじゃね? >>543
無い無い
まず求人サイト見てご覧よ
言語で言うならPythonの求人はJavaの4分の1程度
その上でPythonの仕事内容の多くはデータサイエンスやAI
PHPは言うように以外と求人はある
でも多くのWeb案件はNextJSやJava C# 都内のpythonは多いが
田舎はjavaphpperlrubyばっか Indeed
Next.js 4696
Vue.js 17271
Laravel 12150
Python 8637
Flask 1191
Django 4221
Rails 10694
Ruby 15154
React 24415
C# 45325
Php 60515
Java 85065
Javascript 85087
TypeScript 20636
Pythonは求人少ないんですね >>545
田舎の方がモダンな言語の人気が高いということか。不思議だな。 Runteq の菊本だったか忘れたけど、誰かが言ってたかも知れないけど、
最近、Wantedly の求人の質が下がってきて、
Ruby on Rails は、Geekly へ行ってるとか
他には、Green とかはどうなの? >>510
にも書いたけど、
PHP はKENTA がオワコン認定した。
サーバーの8割がPHPだけど、要するにWordPress 専門言語だろ。
AWS Lambda にも、デフォルト言語として採用されていない
米国年収でも、Dart と並び断トツに低い。
情報学部に行っていない高卒言語
Ruby : 9.9 万ドル
Pythonなど多くの言語 : 7.3〜7.8
PHP : 5.9 必死にRubyを宣伝する馬鹿
Rubyこそオワコンなのに >>526
pythonってライブラリが充実してるって言われてるけど
Javaのほうが充実してるの? 分野と数でいうならそう
業務系はとりあえずJavaっていう時代が長かったし 何か言語を選択しなければ、という発想が間違い
適したものや使えと言われたものを使えばいいだけ
この言語をやるとこの言語ができなくなる、みたいな制約は一切ない 最初の段階でデータ構造とアルゴリズムを分離して考える癖さえ付いてれば
LispだのPrologだのHaskelだの(Visualでない)Basicだのならともかく
普通の手続き型なりオブジェクト指向なりの言語、どれ使ったって書けるよ
それよりフレームワークなりライブラリの揃い方のほうがよっぽど重要 機能追加したろ、げGoで書いてある、で調べて書き直して
よし動いたGo完全に理解した
でレパートリーが増えていく >>557
書けるのと使いこなせるの間には大きな壁がある
大抵の「なんでこんなコードなんだ?」ってのはお前のいう書ける程度の奴の戦犯 ファイルから読み込んで改行を外してリストにする
lines = f.read().splitlines()
これと、リストに改行を付けてファイルに書き込む
f.write('\n'.join(lines))
は逆の処理ではない
最後の行だけ改行が消えるから
joinの代わりに内包表記使うのも、最後に追加で改行書くのも、なんかスマートじゃない 改行が付いてたらそのままで無かったら改行を付ける、
みたいなインテリジェントwritelinesがあればいいのに
そもそもリストに入ってるものをセパレータも何もなしに結合するという破壊的な処理が
必要になる局面なんか無い writelines(list)
は
write(''.join(list))
のシンタックスシュガーみたいなもんだよな
むしろ誤解を招くので、
writelineswithoutanyseparators()
みたいに名前にすべき 対になるのはreadlinesだし
不可逆になるsplitlines使うのが悪い >>565
メモリの使い方ば少し違う
でかいファイルの場合は多少気ににする必要がある
Pythonのread/readlines/write/writelinesは
改行を追加したり削除したりできないので使いにくいのは確か
こことか見ればみんな不満に思ってるのがわかる
ttps://stackoverflow.com/questions/13730107/ >>565
> writelineswithoutanyseparators
読みにくいわー。日常的に、
def supercalifragilisticexpialidocious():
とか書いてるの? 要は、リストがあってそれをファイルに保存したりファイルから取り出したりしたい
csvやjsonやpickleのtxt版
もう少し処理が込み入ってればライブラリ化するんだけど、
1行で書けるからそんな気にもならない >>568
それは一語だからそうとしか書けないでしょ >>560
最終行の改行を気にするなら、splitlines()を使うこと自体がおかしくね?
>>> '1\n2\n3'.splitlines()
['1', '2', '3']
>>> '1\n2\n3\n'.splitlines()
['1', '2', '3'] splitlines()はまさにそういうものを対象にした関数
splitといいつつ、末尾にnullができればそれは無視する
writelinesもどう見ても行は書いてなくて、行を結合したものを書いてる
このへんの関数名と処理内容の不整合が一番の問題
想定と違えば作ればいいだけだけど、欲しいものが既にあるように見える >>> "1\n2\n\n\n".splitlines()
['1', '2', '', '']
>>> "1\n2\n\n\n".splitlines(keepends=True)
['1\n', '2\n', '\n', '\n'] >>572
>'1\n2\n3'
バイナリじゃなくテキスト処理の対象なら
こういうのは改行コード入りの正しい形式に統一するほうが一般的には望ましいので
split/join使っても1つ足しとけば多くの場合は問題ない
末尾の改行コード入りで行単位のテキスト処理をするよりかは楽になることが多い Ruby でも、join の最後には改行はない。
print の後ろにも改行はないが、
puts の後ろには改行はある
p [ 1, 2 ].join("\n")
print [ 1, 2 ].join("\n")
puts [ 1, 2 ].join("\n")
puts "end"
出力
"1\n2"
1
21
2
end >>576
splitlines() は split() と挙動が違うのに split を名乗るなやゴラーと、>>560 氏は言ったのでないの。どう処理するかでなく。 逐次処理してて、見つけたらその都度printする
それを改行せずにコンマで区切りたいので、
print(f'{item}, ', end='')
みたいにすると、
1, 2, 3,
みたいに最後に余計なコンマが付く
それが見苦しいので、一旦リストに入れておいてjoinすることはある
最後の余計なセパレータはNGなのか
C言語の文末の;はセパレータだと思えば余計だけど、無い方が不自然
付けたらエラーになるpascalの方がどうかしてる
リストやらの定義で複数行に分けて書く時に最後の行にも余計なコンマをわざと付けることで、
エディタで編集が容易になる
という状況を見ると、セパレータの追加処理は最後にも付ける方が自然な気がする 自然とか、一般的とか、多くの場合とか
そんな曖昧な話じゃないでしょ csv.writerか似たようなをwriterを書けば幸せになるかもね s1 = 'a\nb\nc\n'
print(s1.splitlines())
print(s1.split('\n'))
['a', 'b', 'c']
['a', 'b', 'c', '']
この挙動の違いをどうしたものかと >>583
splitlinesは改行コードまでを一塊として処理する
\nだけに限らない
splitは指定したキーワードで分割する >>583
その2つは用途が異なるからそれぞれ別の関数が用意されてるわけで挙動が違って当然
何を問題視してるのかわからない
>>584
splitもセパレータを指定しなければ\nに限らず空白文字(whitespace character)なら分割される
(それと連続した空白文字はまとめられるので空文字は含まれなくなる) 文脈からわかるけど空文字ってどこ界隈で使われてんだろう pycharm使ってるんだが、
Windowsをクリーンインスコしたあとpycharmをインストールすると、
pythonの実行環境を再設定するのが面倒。
環境ってプロジェクトのフォルダー配下にあるはずなんだが、
その環境をpycharmが認識してくれない。 # 他人様の blogを勝手に拝借して恐縮だが、
/usr/lib64/python311.zip とは何ぞ? なんで sys.pathに zipが存在するのだろ。
https://www.tomoyan.net/python/pip#パッケージのインストールパスを調べる
> $ python -m site
>
> sys.path = [
> '/home/tomoyan',
> '/usr/lib64/python311.zip', リヌクスならメモリ上に読み込む時にlzhに変換してから名前空間にロードするので
3.11はOS標準のpythonじゃないからzipにしてるんじゃないかな PEP 273 – Import Modules from Zip Archives
https://peps.python.org/pep-0273/
展開したディレクトリがあるのと同じ感覚で読み込めるらしい c#とかやってるけど結局人工知能に興味が沸いてpythonに戻ってしまう
就職出来ればc#でもjavaでも何でもいいんだけど
この時代人工知能以外のIT技術って何を習熟していけばいいの?
もうjavaとかc#で文法以上の何をすればいいか分からん 興味あるならpythonでとことんAIやったらいい
他人のgithub落としてサンプル動かす程度は誰でもできるから勘違いすんなよ >>595
いうて発展的にやることって大規模なデータ訓練とかでしょう?
それか卒論レベルの論文書けるくらいの研究を試してみるってこと? >>594
人工知能に訊いてみりゃいいじゃん。人はなぜ生き、如何に死ぬべきでしょうと。 >>596
どう応用するかはお前の能力次第
好きにやれよ >>598
そうだな
ただ成果はネットに公開しないほうがいいよね ライセンス等に問題なければしょぼくても堂々と公開した方がいい
デメリットはない、就職時にもプラス評価
そもそも公開しても誰にも注目されないのが普通 >>601
お前もパクるんだろ?
気にすんな
実害被ってから考えたらいい
まずパクられるレベルになるのが難しい
平凡なアイデアでは間違いなく先人がいる 適材適所で言語変えてた、言語自体の研究してたくらいじゃないと
言語習得なんて就職時の評価にならん
どんな判断の上どんな応用してきたのかが知りたい部分 >>594のような有能な人は燃え尽きるタイプかなって思うので、常に謙虚でいられるように学ぶ姿勢を持つと良い。
一生学ばなればならないことを忘れてはならない。 AIが代わりに組んでくれる時代がすぐそこまで来てるからな
そのうち手で組むのは趣味だけになるよ プログラムを作るプログラムを作るとシンギュラリティ来るぞ >>605
有能じゃない
kerasとかtensorflowのバージョン上がって
2,3年前に書かれたコード拾ってもどう修正したらいいかもわからん
仮想環境で前バージョン入れてみるってことかな
流石に新しいコード書くのはスキル的に無理だし 大丈夫、始める前からパクられることを心配してるタイプの人間はすぐやめるから パクられるようなもん作れたなら大したもん
誇っていい >>594
言語仕様なんて勉強するものじゃないだろ
使いながら調べるだけ
本質はデータ構造とアルゴリズムだよ >>613
使いながら?ライブラリと勘違いしてない?
あとから新発見があった場合にリファクタしに戻るんだろうか
言語仕様はひと通りみて作法がみえないと使いたくないな
>>614
どう適用して応用するかって一生つきまとう
道具の使い方じゃなくてそういう話 >>615
今はChatGPTあるからそんなこと勉強してるより書いた方が良いぞ
ChatGPTは古い書き方を出すことはまずない ■ このスレッドは過去ログ倉庫に格納されています