Pythonのお勉強 Part71

■ このスレッドは過去ログ倉庫に格納されています
2023/09/20(水) 09:13:41.41ID:u6xixiUt0
↑スレ立てる毎に減るので、減ってたら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のお勉強 Part70
https://mevius.5ch.net/test/read.cgi/tech/1677856680/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2023/11/22(水) 00:17:21.38ID:F4GGzYS90
素人はVScode一択だ
エラーとか事前に全部チェックしてくれるし
型がないからそこまで有効ではないが補完もボチボチ
あとデバッガもある
組み込みのデバッガは癖があるので使いにくいしね
いい時代になったもんだ
昔はemacsかvimでゴリゴリカスタマイズするか
IntelliJみたいな有料IDE使うしかなかった
2023/11/22(水) 00:18:44.29ID:F4GGzYS90
>>712
Sublimeやatomをさらに強化したようなエディタだしね
もはやこれに勝てるエディタはない
2023/11/22(水) 00:19:14.06ID:F4GGzYS90
素人さんでもそれなりのレベルに引き上げてくれる
使わない手はない
2023/11/22(水) 02:19:33.89ID:1zch1/igH
>>710
IDEは覚えること多すぎてダメ
苦労してやっとPython使えるようになったのに今度はVSCode覚えろとか無理
2023/11/22(水) 03:23:40.39ID:F4GGzYS90
>>716
VSCodeはたいして覚えなくても良い
拡張だけ入れとけば勝手にやってくれる
他のIDEに比べたら劇的に簡単だから使ってみろ
ちょっとずつ覚えれば良い
多分VSCodeは代わりがないから
今後10年レベルで使うことになるからとっとと入れよ
2023/11/22(水) 03:24:46.57ID:dB+b5h5a0
VSCODEは慣れたら最強だが
プラグイン増え過ぎでそれを使いこなせてる人でないと敷居が高いともw

spyderはちょっと重い
idleは軽くて使い易いがanacondaのトップに無いからだんだん使わなくなる

サクラエディタ、terapad、notepad++あたりはちょっと開いて確認、修正するくらいなら使うか

エディタではないが
jupyter各種も勉強という意味では良い
2023/11/22(水) 03:30:31.61ID:dB+b5h5a0
VSCODEも開いて書いて実行するの環境設定に一瞬だけだが手間が掛かるから超初心者は「どうやるんだろう」
で時間が掛かる

ググればいいけどな
でも開発に8GBメモリのPCが与えられる職場だと厳しいか
720デフォルトの名無しさん (ワッチョイ aefe-8oJ/)
垢版 |
2023/11/22(水) 07:28:28.99ID:eWaPk4Ti0
VSCodeで難しいとか言ってたら
eclipse見たら発狂するぞ
2023/11/22(水) 07:40:33.97ID:xMRvBf/x0
まぁ情報収集にここを使うくらいの知識レベルなんだから何事も難しいのは仕方ない
2023/11/22(水) 07:40:36.14ID:1zch1/igH
一回だけVSCode入れてみたことあるんだけど
設定メニューがへんてこなXML風で、これは習得コストが高いと思って断念した
2023/11/22(水) 09:06:57.79ID:Xn5wjfcn0
>>722
そうなっちゃうか
結局設定画面ってそのXMLを書き換えてるだから、ここを変えると...おー!反映されてる!
とかならない?
724デフォルトの名無しさん (ワッチョイ 6e46-4xZ8)
垢版 |
2023/11/22(水) 09:09:31.67ID:O2r9KWkp0
結局これ↓

> 組み込みのデバッガは癖があるので使いにくいしね

で充分と、個人的には思う。gdb と似たコマンド体系だし。
2023/11/22(水) 09:11:14.45ID:DreVDkFV0
他人に使わせるツールとか作ると判るけど、
手間の大半はメイン部分じゃなくてUI部分なんだよな
設定ファイルエディタを各自作る羽目になる
2023/11/22(水) 09:45:45.64ID:LokQ4a0j0
>>722
設定ファイルの形式のことを言ってるならJSONだけど
設定画面を使ってる限りは特に意識する必要ないでしょ
そこだけを見て習得コストがーとか結論づけるのはナンセンス
2023/11/22(水) 09:49:49.84ID:DreVDkFV0
configparserで読み込むiniは人間が書く用だけど、
xmlやjsonは人間に触らせたら駄目な気がする
読めるというだけで矛盾なく編集するのは無理
2023/11/22(水) 10:44:12.45ID:LokQ4a0j0
vscodeは設定ファイルにもコード補完や型チェックが効くのよ
2023/11/22(水) 12:07:57.61ID:F4GGzYS90
>>722
デフォルトでやれ
そこいじる必要はない
2023/11/22(水) 13:02:58.88ID:2R+eTKz90
XMLは最高のGUI定義ツールなので扱える方が良い。
AndroidスマホもXMLでOSのスタイルを定義している。
覚えるというよりは、扱いに慣れておくと良い。
ソフトウェアエンジニアならそれくらい出来て当然。
2023/11/22(水) 13:38:46.84ID:bouDYTS90
そういう話なのか
スキーマがないJSONもXMLは滅んでくれなら分かるが
2023/11/22(水) 13:57:34.26ID:J37I1a5Va
いやそれ黒歴史だから
今やXMLを陽に出してるのはほとんどない
裏のフォーマットとして存在してるだけだし
しかもGUIは全部HTMLで作るのが主流になって完全なオワコンになった
2023/11/22(水) 13:59:53.66ID:J37I1a5Va
もちろん当時の時代背景を考えればXML採用は自然だった
2000年ぐらいはXMLの大ブームが来て
(今思えばあのブームはマイクロソフトが恣意的に作ったものだった?)
全てをXMLにしようという動きがあったから仕方ないけど
2023/11/22(水) 14:12:19.15ID:DreVDkFV0
xlsxファイルを展開してxmlを手で修正してxlsxに戻す、とかやってたな
excelのバグでデータ壊れるのに直す気が無い
2023/11/22(水) 14:20:39.43ID:J37I1a5Va
>>734
xlsxをパースしてhtmlに変換するとかやってた
まじで無駄すぎ
2023/11/22(水) 14:26:19.12ID:DreVDkFV0
excelついでに
巨大なxlsxファイルを出力するのってどうやっても異様に遅いけど、
高速化する手段無いよね

データ入力して解析して出力データ作って、までは一瞬なのに、
xlsx形式への変換だけで延々と待たされる
2023/11/22(水) 14:49:22.81ID:QuV+YjRV0
内容によるしpythonで完結しないけどcsvで出してエクセルで読み込むとかどう?
2023/11/22(水) 15:49:36.79ID:DreVDkFV0
複数シートあるからcsv使えないんだよな
バラでやるという方法もあるけど、手作業が入るくらいなら一晩放置の方がいい
2023/11/22(水) 16:23:45.37ID:IUnPDzEi0
xlsbではどうだろうか?
2023/11/22(水) 16:44:32.44ID:xdLBQuj30
>>736
pyexcelerate > xlsxwriter >>> openpyxl
なんだけど今は何使って出力してる?
2023/11/22(水) 16:50:36.69ID:DreVDkFV0
openpyxlだけど、それしかなくない
2023/11/22(水) 16:57:18.94ID:QuV+YjRV0
>>741
>>740が書いてくれてるじゃん。openpyxlが一番遅いって。
2023/11/22(水) 17:10:10.92ID:DreVDkFV0
おお、試してみよう
機能も多そう
2023/11/22(水) 17:28:52.18ID:F4GGzYS90
実験屋はデータをエクセルそのまま渡したがるのだけど
マジでやめてほしい
2023/11/22(水) 17:53:44.07ID:bouDYTS90
でもJupyterのノートブックしか受け付けません、とはならんし
Excelで情報渡すなら範囲に名前定義したり
データのみシートに分離するのが至極当然であることを伝えよう
2023/11/22(水) 17:57:45.73ID:F4GGzYS90
openpyxlでそのままパースできるからいいじゃんと言われてぐうの音も出ない
2023/11/22(水) 19:19:26.29ID:B4K5aofh0
独学でPythonマスターできますか?
オツムは関関同立理系レベルでふ
2023/11/22(水) 20:13:17.88ID:B4K5aofh0
すみませんやっぱり諦めます
2023/11/22(水) 20:14:43.45ID:F4GGzYS90
諦めたらそこで試合終了だよ
750デフォルトの名無しさん (ワッチョイ 9140-jMfl)
垢版 |
2023/11/22(水) 21:31:30.57ID:Rzk2Qyuv0
VBA使う方が楽
できるだけPythonでやりたくても、インプットがexcelファイルである以上ある程度はVBAでやる方が楽だなって最近実感した
751デフォルトの名無しさん (ワッチョイ 29b1-ettz)
垢版 |
2023/11/22(水) 22:02:07.45ID:wOB76uPy0
プログラムってほとんどの人が独学だから「やればできる!!」
752デフォルトの名無しさん (ワッチョイ aefe-8oJ/)
垢版 |
2023/11/22(水) 22:42:31.11ID:eWaPk4Ti0
>>722
設定に変える部分ある?
753デフォルトの名無しさん (ワッチョイ aefe-8oJ/)
垢版 |
2023/11/22(水) 22:43:48.36ID:eWaPk4Ti0
>>727
jsonはわかりやすくね
個人的にyamlより読みやすいよ
XMLはクソ
2023/11/22(水) 23:13:13.90ID:rqdHSTy50
手書きするなら圧倒的にJSONの方がXMLよりいい
YAMLは文脈依存文法な感じがしんどい、とかいってPython使ってて何言ってんだって感じだけど、
pythonに慣れてなかったころの敬遠する感覚を思い出す
2023/11/22(水) 23:22:58.96ID:DreVDkFV0
形式なんか何でもいい
そんなもんを手書きさせるのが間違い
内部データを保存するのにバイナリよりシリアライズしたテキストの方がよっぽど素性がいいというだけ
2023/11/22(水) 23:25:03.35ID:BN/HxvkXa
yamlの中にjson書いちまえよ
2023/11/23(木) 00:25:25.41ID:6RfeBRcn0
>>755
>形式なんか何でもいい
>そんなもんを手書きさせるのが間違い
最近は設定ファイルがスキーマを持っていて効率よく手書きできるんだよ
758デフォルトの名無しさん (アウアウウー Sa85-UHOz)
垢版 |
2023/11/23(木) 10:14:43.85ID:mHKDjshta
>>727
>読めるというだけで矛盾なく編集するのは無理 (誤)

矛盾なく編集するのは馬鹿には無理 (正)
759デフォルトの名無しさん (アウアウウー Sa85-UHOz)
垢版 |
2023/11/23(木) 10:18:32.79ID:mHKDjshta
>>731
そうだね
760デフォルトの名無しさん (ワッチョイ 46ba-f5/H)
垢版 |
2023/11/23(木) 11:40:45.92ID:xT+GKDoJ0
pythonやってると何でも出来すぎて他人と差がつかない気がしてきた
pythonエンジニアとしてアドバンテージ取るには何できたらいいですか?
2023/11/23(木) 11:52:12.60ID:FNLD9uI30
開発環境に凝る
762デフォルトの名無しさん (ワッチョイ 4678-f5/H)
垢版 |
2023/11/23(木) 12:40:09.57ID:xT+GKDoJ0
凝るっていっても開発環境なぞ共通ではないですか
763デフォルトの名無しさん (ワッチョイ 4d9b-OZuz)
垢版 |
2023/11/23(木) 13:25:00.91ID:amPFEvIW0
開発環境に凝るのは誰もが通る道だろ
2023/11/23(木) 13:29:38.82ID:M3SMKrV50
今はVSCodeで良くなったしな
docker使えばOSの差もない
つまんない時代よ
2023/11/23(木) 13:31:59.61ID:9np+Rtrn0
pythonでできることといっても多岐にわたるから差をつけられないってことはないだろう。
pythonの使い方だけで差をつけようと思ってもそりゃ無理だが。
2023/11/23(木) 13:34:08.79ID:M3SMKrV50
速度を除けば大抵のことができるからね
これほどライブラリが揃ってる言語は歴史的に見てもない
2023/11/23(木) 14:34:59.54ID:flwx+3WQ0
>>760
python以外の言語を習得してみたら?
世界が広がるよ
2023/11/24(金) 16:53:48.87ID:YbIXxF2c0
今からPython勉強するのにJupyterLabじゃなくnotebook使うメリットはありますか?
2023/11/25(土) 20:04:58.86ID:dphqiFMy0
ちょっと古いnotebook(6系)ならjupyter-contrib-nbextensionsが優秀だからアリ
7系だとJupyterLabを使わないとnbextensions相当のことができなくてなし、かな個人的には
scratchpadないのは厳しい
2023/11/26(日) 06:37:33.73ID:/ewoALlR0
使える機能拡張に違いがあるということか
学習系の動画見てると候補が出てくるのが便利だな何かなと思っていたがそれなのね
ありがとう参考にするわ
2023/11/26(日) 08:57:43.58ID:svIGcsZy0
メモ帳をエディタとして使う話かと思った
772デフォルトの名無しさん (ワッチョイ 6746-xL6i)
垢版 |
2023/11/26(日) 09:41:10.75ID:YklbHXOm0
notepad と terapad しか無い環境で、頑張った思い出...
2023/11/26(日) 11:25:49.02ID:+Jpfh5lQ0
>>772
そういう環境で、ポータブル化VScodeとかWinPythonとかの
インストール不要なものを持ち込んでやってたわ
2023/11/26(日) 11:35:13.55ID:svIGcsZy0
ダウンロードも禁止だよ
775デフォルトの名無しさん (ワッチョイ bf7d-tUT+)
垢版 |
2023/11/26(日) 15:06:58.60ID:sYav70q40
プログラミング勉強始める人にオススメ聞かれたら公式のPythonとVSCode一択かな
2023/11/27(月) 01:03:26.27ID:ggQuSpTQ0
Python では転職できない。
企業は理系で大学院数学科か、AWS 機械学習資格を持っていない香具師を雇わない

ウェブ開発で転職できるのは、Ruby on Rails のみ

例えば、YouTube の女子大生のかよちんは、
Railsの初心者で就職して、
1年後に、Django の会社に転職した

YouTubeで有名な雑食系エンジニア・KENTA は、
初心者のキャリアパスは、Rails → Go だけと言ってる
2023/11/27(月) 01:15:42.85ID:Q/UdWWa/0
googleの奴隷になる覚悟があるならGoで就職するのもありだろう
RoRの需要は減る一方なので、それで仕事を見つけても同時に次を探さないと早晩食い詰める
pythonができますと言ってもそのくらいは当たり前なので、
pythonで何ができますまで無いと仕事には結びつかない
セキュリティ、ビッグデータ、人工知能あたりが不足してる
778デフォルトの名無しさん (ワッチョイ a76a-1fOb)
垢版 |
2023/11/27(月) 19:07:42.88ID:HA2WCtFh0
chatGPTに得意な言語聞くと
「Python」と返答したので
Pythonでいいだろう

Python知ってると
どの分野に行ったとしても
パソコン使う仕事の時に手っ取り早く自動化できる
Python知ってれば他の言語は使わないだろう
2023/11/27(月) 19:28:02.33ID:Q/UdWWa/0
perl覚えた時も、これあればずっと困らないかもと思ってた
C言語は今でも普通に使ってる
あいつ何なんだ
780デフォルトの名無しさん (ワッチョイ a76a-1fOb)
垢版 |
2023/11/27(月) 20:07:30.10ID:HA2WCtFh0
学生の時、Cとjava勉強して基本情報処理をC言語で取ったが
python使うようになってから家ではpythonしか使わない
でも、、今まで勉強した言語の中で唯一
一冊も本を買っていない
781デフォルトの名無しさん (ワッチョイ 07b1-YQgT)
垢版 |
2023/11/27(月) 22:31:56.55ID:XZyg9nsC0
C++ ってC++17 C++20 C++23 ってばんばん規格が更新されるじゃん。
もう付いていけてないw

最終的にはpythonみたいに書きたいんじゃね?って思うw 違うかw
2023/11/27(月) 23:07:27.83ID:58wAMQmG0
c#も毎年のようにバージョン上がってるけどそんな話にはならん
783デフォルトの名無しさん (ワッチョイ c781-1+JT)
垢版 |
2023/11/27(月) 23:14:46.03ID:jksiOuqq0
CとJavaScriptもPythonじゃ置き換われん
2023/11/28(火) 00:43:20.23ID:tbHgY5Ye0
辞書に値入れるとき、キー名とバリューの変数名が同じならキー名だけでよいって仕様にならんかなぁ…
2023/11/28(火) 01:19:34.65ID:5v5wYsOr0
そんなJSみたいなクソ仕様は入れない
2023/11/28(火) 06:44:20.72ID:tbHgY5Ye0
>>785
ごめんなんでクソなの?
変数名とキー名を合わせることにも繋がるし可読性高まってよいと思ってた
2023/11/28(火) 07:17:14.41ID:khx6ZkglH
Javaは厳格すぎるしJavaScriptは緩すぎる
Pythonが一番バランスがいい
2023/11/28(火) 07:45:02.70ID:Qmk7LgpZ0
それsetを使うべきなのでは
789デフォルトの名無しさん (ワッチョイ c781-1+JT)
垢版 |
2023/11/28(火) 07:55:42.57ID:fKkgRK0i0
>>786
a = (1,2,3)
b = (1,2,3)
d = {a, b}

仮に、{a, b}がsetにならないならこういう事?
2023/11/28(火) 08:10:19.81ID:kRkdmaFgd
変数名とか関数名とか
動的に取得されたりすると
難読化で不具合出るんよな。。。
2023/11/28(火) 08:12:46.13ID:iKFapkLZ0
難読化するつもりがあるのなら
Pythonなんて真っ先に除外する対象じゃね?
792デフォルトの名無しさん (ワッチョイ 7f2a-xL6i)
垢版 |
2023/11/28(火) 08:16:25.22ID:VInsuioq0
>>786
え?
dic1 = {"a":"abc", "b":"bc", "c":"c"}
と、キーバリューの同じ場合があるのでなく、
dic1 = {"a":"a", "b":"b", "c":"c"}
と、常に同じという意味なの?
2023/11/28(火) 08:20:01.05ID:VgOmfrQ10
>>788
キーと変数名が同じで中の値自体は別
794デフォルトの名無しさん (アウアウウー Sa0b-6V65)
垢版 |
2023/11/28(火) 08:35:12.55ID:t7+ip2Xga
>>784 Rust には(dictではないが)あるよ
>>788 set とは用途が違うんだよ
795デフォルトの名無しさん (アウアウウー Sa0b-6V65)
垢版 |
2023/11/28(火) 08:37:37.91ID:t7+ip2Xga
>>792
そうじゃなくて
a = "abc"
b = "bc"
c = "c"
ってのがあるときに
dic1 = {"a":a, "b":b, "c":c}
は面倒だろ
dic1 = {a, b, c}
って描けるんだよ
2023/11/28(火) 08:42:59.96ID:Qmk7LgpZ0
確かに、keyと変数名が同じことはよくあるな
クラスのメンバ名と変数名もよく揃ってる
def __init__ (self, なんやら):
self.なんやら = なんやら
なんで同じこと3回も言うねん
797デフォルトの名無しさん (アウアウウー Sa0b-6V65)
垢版 |
2023/11/28(火) 09:26:56.20ID:t7+ip2Xga
def __init__ (self, **kwargs):
self.kwargs = kwargs
これでもまだ冗長に観える
2023/11/28(火) 11:52:54.06ID:rFxrbgTI0
それだとキーワード引数が複数個ある場合の使い方とアンパックして中の値を使いたいかの目的が多重化している
2023/11/28(火) 11:55:42.65ID:rFxrbgTI0
具体的にわかりやすく書いてくれたから容易に、思いつく。
2023/11/28(火) 12:01:56.55ID:Qmk7LgpZ0
print(f'なんやら={なんやら}')

print(f'なんやら=')
に省略可能なのと同じ規則で、
self.なんやら =
だけで終わると補完される

危険すぎる
801デフォルトの名無しさん (アウアウウー Sa0b-6V65)
垢版 |
2023/11/28(火) 20:50:42.09ID:HOP5xTToa
技術的選択というのは最終的には必ずトレードオフになるので
ある選択のプラス面だけしか見ない/考えない/認識できないやつは何やらせてもダメ
2023/11/28(火) 21:24:12.74ID:hiFSE4Z1M
欲しい理由が書くのが面倒とかって時点でな
803デフォルトの名無しさん (ワッチョイ 7f5d-AnfR)
垢版 |
2023/11/28(火) 21:27:35.30ID:1nBQ24fZ0
やはりmojoの時代来るか
2023/11/29(水) 04:15:28.77ID:MwCCIaBL0
プログラミング言語覚えるなんて必要な努力が知れてるでしょ。特にパラダイムが変わらない場合。
Pythonがある程度書けるようになったらプログラマー目指してるなら他の言語やったほうがいいし、そうでないなら機械学習みたいな明らかに別のドメイン知識の勉強が必要なものやるかした方がいいでしょ。
Pythonだけ極めてる人なんてほとんど居ないのでは。
2023/11/29(水) 06:25:40.88ID:n75oaT1ga
Pythonだけチョットデキルようになって
極めたつもりになってる人なら沢山いるね
806デフォルトの名無しさん (ワッチョイ 8701-4JCo)
垢版 |
2023/11/29(水) 06:28:25.87ID:rNDCOHEd0
O'REILLY本は何を読んでます?
2023/11/29(水) 10:37:01.51ID:CDmlmqgH0
>>760とかまさに
808デフォルトの名無しさん (ワッチョイ a675-w+dO)
垢版 |
2023/12/02(土) 10:07:20.71ID:ltiFkw6s0
macのpythonでpip installしたパッケージが
インポート出来ないのどうしたらいいの?

import pip
pip.main([“list”])

するとちゃんと一覧出てくるんだけど
じゃあそのパッケージimportってすると
ModuleNotFoundErrorになる
809デフォルトの名無しさん (ワッチョイ 6d46-MHAP)
垢版 |
2023/12/02(土) 11:13:47.87ID:6G8OKUYC0
うちのは Python 2、3両系入っていて、2系に誤インストールしたライブラリが3系で見つからず、よく大騒ぎする。
2023/12/02(土) 15:54:14.39ID:5vdThGAW0
>>805
そういう"誤解"は人間にはとても重要
必要もないのに変に実力を知らせたがるのが多いけれど無意味
レベルアップするときに知ればいいだけ
客観的真実というのは人間には害になることのほうが多い
2023/12/03(日) 01:33:52.43ID:l1Ri8dMm0
Python3エンジニア試験に合格したぜよ
これでエンジニア名乗っていいな
2023/12/03(日) 02:44:06.55ID:hEIQYuRL0
最低コンピュータサイエンスの学士じゃないとエンジニアとは呼べないな。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況