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/19(日) 22:59:46.66ID:uFm9+T2V0
アンカーどうなっとんねん
2023/11/20(月) 09:06:45.18ID:RnUiirN00
>>678
とりあえず配列の使い方を勉強したほうがいい
2023/11/20(月) 09:28:59.78ID:QoOP4h9Z0
https://pbs.twimg.com/media/FRbgL_YaQAA0lyv?format=jpg&name=medium
チートシートが要るくらい判りにくい
682デフォルトの名無しさん (アウアウウー Sa85-UHOz)
垢版 |
2023/11/20(月) 14:01:18.90ID:MS7hPbOQa
Blender4登場でPython用無しへって言われてるけど
Python使った方が描き易くね
2023/11/20(月) 15:38:29.00ID:DbfyuSYxd
すまん、アンカーつけミスってた
2023/11/20(月) 17:19:06.53ID:39chtrqnd
>>678
(なんでsampleじゃなく、choiceなんだ・・・)
data =random.choice(file)
は1つの画像
l_reversed = paths[0::-1]
は1つの画像が入ったリスト
ランダムもソートも、このあとどう使われてるのかさっぱり分からんのだぜ

(別の問題が発覚しそうだけど)
とりあえず、ランダムのプログラムにこの2行入れちゃえば解決しそう
file.sort(key=os.path.getmtime, reverse=True) # ソートして
file = file[:10] # 10個だけにする

あと、最適化とかスマートとか気にするレベルじゃない
2023/11/20(月) 21:11:58.82ID:uCxOj8y10
Excelの散布図で近似曲線の数式(y=ax+bみたいなの)をすぐ表示できるけど、
plotnineのstat_smooth関数使うときに同じ感じでサクッと表示する方法ないですかね?
2023/11/20(月) 22:34:11.87ID:QThOiYWP0
>>685
ありがとうございます。
検証したら確かに
file.sort(key=os.path.getmtime, reverse=True)
で行けそうです
(Google Colabだとアップロード順や作成時間の関係でmtime/ctimeが若干思った挙動と違いますが・・・)

この場合だと、べた書きすると
File_1.sort(key=os.path.getctime,reverse=True)←ここで作成日付逆順でソート(getctimeで作成日順でソート)
File_1_Last = File_1[0]←最初の1個(一番直近に作成したやつ)
という理解でであってますかね?

10個絞り込みたかったらFile_1[0~10]でべた書きすればいいということですよね?

初歩的なことですいません・・・(-_-;)
2023/11/20(月) 22:34:48.05ID:QThOiYWP0
>>684
やん・・・またアンカーミスった(;´д`)
2023/11/20(月) 23:42:23.04ID:LeyGRqAQd
>>686
公式ドキュメントのチュートリアルの最初の方に書いてある
チュートリアルくらいは、一度目を通してくれ
https://docs.python.org/ja/3/tutorial/index.html
https://docs.python.org/ja/3/tutorial/introduction.html#lists
2023/11/20(月) 23:55:15.19ID:7M4T/4JK0
>>688
これの11.3まではやったけど
11.4のマルチスレッディング以降はまだやってないなあ
2023/11/21(火) 08:23:09.96ID:LcVKgP510
チュートリアルには
from urllib.request import urlopen
が書いてあるけど、
import requests
の方がいいよな
2023/11/21(火) 09:32:55.38ID:OtSZp9c+0
チュートリアルなんだから、PyPIその他サードパーティモジュールの使い方について学ぶ段階に進む前は、標準モジュールのみで話を進めねば
2023/11/21(火) 10:04:19.49ID:QDAC0gh80
>>686
なんかすごい速度で進化していきそうだな。理解が早そう。
ただ、ランダムとか言ってた割にソートしたがるのは謎だが。
2023/11/21(火) 12:16:17.16ID:0aCdJNBJ0
このスレ見てチビったけどお前ら上級者なんだろ?

最初はこういうのから始めればいいんだよな?
http://imgur.com/YVs4j9n.jpg
2023/11/21(火) 12:50:42.41ID:QDAC0gh80
どんな言語でも最初はhello worldと相場が決まっている
695デフォルトの名無しさん (ワッチョイ 6e46-4xZ8)
垢版 |
2023/11/21(火) 15:20:50.52ID:aUIDxCId0
>>693
input 関数があるなんて初めて知ったわ。
オレはようやくのぼりはじめたばかりだからな
このはてしなく遠い Python坂をよ…
2023/11/21(火) 15:26:30.08ID:Vub9wpCBa
>>695
勘弁しろよ
標準入力から入力するってどの言語でも1番最初にやるレベルのことだぞ
2023/11/21(火) 15:35:40.89ID:Vub9wpCBa
inputという関数があるんだ、それは入力を受け取る関数なんだ、じゃなくて
標準入力(キーボード)から入力する方法があるはずだ、それはpythonではinput関数なんだ
こういう発想でやらないとコードなんていつまでも書けんぞ
この思考でやれば他の言語の時も脳の負荷が少ない
俺はこれを抽象的仮説思考と読んでいる
2023/11/21(火) 15:41:58.36ID:LcVKgP510
普通に使ってたらinput()なんか使わんやろ
実行を一時停止する時に使うくらい
2023/11/21(火) 15:59:34.91ID:Vub9wpCBa
んなアホなw
700695 (ワッチョイ 6e46-4xZ8)
垢版 |
2023/11/21(火) 16:01:38.28ID:aUIDxCId0
>>696,697
sys.stdin で憶えたからそっちばっかり使っていたわ。
勉強になるね、ChatCPT。
2023/11/21(火) 16:15:26.01ID:is7gJ9QfH
AI使い出すとやりたいこと書けばサンプルコード吐いてくれて、更にそれを発展させることも出来てしまうから、なんかアイデアだけで給料貰ってる感じがする
これからはコード書けるとか、ここでやり取りしてるような知識では飯食えんな
2023/11/21(火) 17:03:35.20ID:YwWuHKsv0
オンラインじゃない現場なんてクソあるから
飯は食えるけど、サクッと合意形成とサクッと試作品とサクッと検証するまでがセットにならないと開発者としては落ち目
2023/11/21(火) 17:05:25.01ID:YwWuHKsv0
インターネット接続できない場所もあるからね
2023/11/21(火) 19:33:06.81ID:KWbYnmSX0
>>697
>標準入力(キーボード)から入力する方法があるはずだ、それはpythonではinput関数なんだ
必要に迫られてキーボード入力の方法を探してればそうなるし、そういう場面がなければ
>inputという関数があるんだ、それは入力を受け取る関数なんだ
になる
そんだけの話
705デフォルトの名無しさん (ワッチョイ 29b1-ettz)
垢版 |
2023/11/21(火) 22:11:07.25ID:YnWTOShJ0
input()ってデバッグの時に使うな。
ある条件の時の結果を見たい時、input()入れておいて一旦プログラムを止めて結果を見る。
2023/11/21(火) 22:29:10.41ID:LcVKgP510
まあ、普通は止まっても何も嬉しくないけど、seleniumでブラウザが動いてる時は、
止めて観察しないと作れない
2023/11/21(火) 22:32:29.50ID:x0TxAGsF0
ブレイクポイントの使い方を覚えようか
2023/11/21(火) 22:49:08.88ID:MyNMYruR0
>>705
Visual Studio Codeでデバッガ使えよ
2023/11/21(火) 22:58:06.32ID:ilvvGzSI0
これはまた珍しい人だな
2023/11/21(火) 23:04:11.72ID:MyNMYruR0
まさかプレーンなエディタ使って書いてる?
マジで生産性ゼロだからやめとけ
2023/11/21(火) 23:32:04.01ID:LcVKgP510
何で書いても変わらんよ
2023/11/21(火) 23:47:12.00ID:W0YnhLkK0
俺は初めATOM使ってたわ
色んなパッケージ組み合わせて使いやすい環境にして楽しんでたけど、会社でvscode使ってみたらスゴすぎて速攻移行したw
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知ってれば他の言語は使わないだろう
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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