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/09/20(水) 09:14:07.15ID:u6xixiUt0
●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その58
https://mevius.5ch.net/test/read.cgi/tech/1662514433/

〇前スレ〇
Pythonのお勉強 Part69
https://mevius.5ch.net/test/read.cgi/tech/1669293584/

次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ### ?

VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2023/09/20(水) 09:16:07.33ID:u6xixiUt0
前スレ間違えた
Pythonのお勉強 Part70
https://mevius.5ch.net/test/read.cgi/tech/1677856680/
4デフォルトの名無しさん (アウアウウー Sa53-9C00)
垢版 |
2023/09/20(水) 09:19:24.04ID:R98wQa7Ya
>1
先頭の三行全部消えてるぞ
やり直せ
2023/09/20(水) 09:44:04.60ID:VS2jxSdT0
前スレの時点で無くなってたんだけどな

!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。
2023/09/20(水) 12:26:44.56ID:Srz1WE4FM
ワッチョイ知らないのに立てるやつら…
2023/09/20(水) 14:10:48.76ID:UfpBE+4Y0
ついてるから最後の一行だったんだ
それか一行だけ付けたか
2023/09/20(水) 14:22:33.61ID:VS2jxSdT0
ワッショイありスレだからワッショイありにする文字列を普通に付けた
減ってたら云々の注意書きは読んでない
2023/09/20(水) 20:06:31.74ID:H1LuggNZ0
わっしょい!
2023/09/20(水) 20:17:28.20ID:VS2jxSdT0
3つのWをテーマとしてpythonを勉強していきます
11デフォルトの名無しさん (ワッチョイ 8f1b-shxo)
垢版 |
2023/09/20(水) 22:05:58.75ID:Kv43bxUF0
最近Pythonを勉強し始めたけどなんかもう嫌になってきた
2023/09/21(木) 06:40:49.16ID:iHUyD9fXM
>>10
waste
wnko
wakiga
13デフォルトの名無しさん (アウアウアー Sa8f-hs9u)
垢版 |
2023/09/21(木) 06:58:37.77ID:JP0yrx1ca
Pythonって標準ライブラリでも
reとglobで正規表現の文法違うのってなんでですか?

re, globの文法の厳密な定義みたいのが公式ドキュメントで見つからなかったのですがどこにありますか?
14デフォルトの名無しさん (ワッチョイ ff90-xbk3)
垢版 |
2023/09/21(木) 08:04:41.22ID:Xwg3U7a60
他人が作ったものの仕様の理由を聞く意味はない。
他人が作った仕様に文句を言うのも意味はない。

嫌なら、自分で代わりのものを作ればいい。
2023/09/21(木) 08:28:10.71ID:TFH4YUGIM
雑談したいがための無意味な質問はやめて欲しいね
2023/09/21(木) 09:35:51.71ID:GkZJhn7VM
>>11
それは目的なく勉強してるからだろう
Pythonで作りたいものがあって勉強するのと
流行りもんだからというノリで勉強するのとではモチベが違う
17デフォルトの名無しさん (アウアウアー Sa8f-hs9u)
垢版 |
2023/09/21(木) 09:37:07.46ID:VtU3IO45a
>>14
プログラミング言語は人間が使うために設計されているのでその裏にある思想を理解することは意味ありますよね
意味がないと思っているのは誤りです
2023/09/21(木) 10:08:33.58ID:MRVbmaTe0
>>13
globは正規表現ではなく、fnmatch.fnmatch()を使用したパターンマッチ。もともと違うものなので文法も違って当然
2023/09/21(木) 10:09:16.46ID:MRVbmaTe0
>>17
つまり、思想などと大層なものを持ち出す必要はない。違うものだから違うのだ
20デフォルトの名無しさん (ワッチョイ 8f46-EWS7)
垢版 |
2023/09/21(木) 10:48:56.55ID:CLeGLuvQ0
>>13
下記だそうなので、perlre(1)とsh(1)を見ると良いのではないだろうかね。

https://docs.python.org/ja/3.9/library/re.html
> このモジュールは Perl に見られる正規表現マッチング操作と同様のものを提供します。

https://docs.python.org/ja/3.9/library/glob.html
> The glob module finds all the pathnames matching a specified pattern according to the rules used by the Unix shell,
21デフォルトの名無しさん (ワッチョイ 4f7f-xbk3)
垢版 |
2023/09/21(木) 11:53:44.87ID:l2X1fRqa0
>>16
これに尽きるな

カメラに写った数独を解く、っての作ってみてるけど楽しいぞ
PythonというよりOpenCVや画像処理の勉強になってるが
2023/09/21(木) 12:18:15.49ID:RdJljcgO0
いいね、そういうの
もう少し基礎学習進めたらそういう画像処理を絡めたお題に挑戦してみたい
2023/09/21(木) 12:52:27.44ID:fwEEIjg70
pythonが楽で他の言語触るのがいやになったな
2023/09/21(木) 13:19:09.95ID:vUbuGSr00
簡易言語でカスタマイズできる系のツールの不出来な文法に、
pythonそのまま使えよと思う
25デフォルトの名無しさん (ワッチョイ cf01-9C00)
垢版 |
2023/09/21(木) 14:09:24.06ID:5L348Pt10
高度IT人材、富士通は最大年収3500万円へ

NECと富士通が人工知能(AI)人材の獲得に本腰を入れ始めた。AIやセキュリティー
などの技術の重要性が増す中、それらの高度な技術に対応できる人材(以下、
高度技術人材)の市場価値が急上昇している。企業は自社の採用活動を優位に
進めたり、他社からの引き抜きに対抗したりするために、高度技術人材に厚く
報いる新たな人事制度を模索している。こうした中、日本企業の中で際だった
動きを見せているのがNECと富士通だ。
NECは若手研究者向けに厚待遇の新人事制度を導入し、「20〜30代の社員9人
に適用した」(NEC)。一方、富士通は2020年度上期中に年収2500万〜3500万円
を提示できる新人事制度の導入に向けて調整中であることが、共に日経
クロステックの取材で分かった。
26デフォルトの名無しさん (アウアウアー Sa8f-hs9u)
垢版 |
2023/09/21(木) 15:58:35.06ID:qJLQqtSya
>>18
ありがとうございます。勉強になりました。
27デフォルトの名無しさん (アウアウウー Sa53-9C00)
垢版 |
2023/09/21(木) 16:40:22.85ID:2fMT8T96a
>>24
Excelのことですね判ります
28デフォルトの名無しさん (ワッチョイ 8f1b-shxo)
垢版 |
2023/09/21(木) 17:39:53.63ID:3+rVBsX80
>>16
そういうのじゃなくてさ
C#とかと比べると言語仕様やフレームワークのあまりのクソさにうんざりしてくる
無理やりオブジェクト指向にしてみました感がそこかしこに感じられる
2023/09/21(木) 17:52:26.27ID:vUbuGSr00
ルールはゆるい方が作りやすい

いちいち自分で申請書書いて自分で受理してからしか飯が食えない生活とか嫌だろ
2023/09/21(木) 18:08:20.40ID:qrfAaXPq0
自分はC#よりpythonを触る時間が多くなった
2023/09/21(木) 18:56:08.52ID:GkZJhn7VM
>>28
比べなきゃいいじゃん
明日までにこのソフトをPythonで作らないと首になるみたいな状況じゃないんだろ
JavaやC#で済むならそれでよし
2023/09/21(木) 19:05:31.00ID:TFH4YUGIM
>>28
嫌ならやめれば良いじゃん
誰も困らんよ
33デフォルトの名無しさん (ワッチョイ 0f01-xbk3)
垢版 |
2023/09/21(木) 19:18:10.84ID:IjVngpsR0
numpyはベクトル演算だから初心者にはちょっと理解しづらいはず
といってnumpyはpythonの最高のライブラリだからこれを避けて学ぶわけにもいかない
ベクトル演算とはどういうものかを基礎から習得していくしかないな
2023/09/21(木) 19:29:17.42ID:vUbuGSr00
numpyは要らない人はずっと要らない
必要な人は既にベクトルくらい知ってる
2023/09/21(木) 19:37:19.62ID:4pc6shKb0
ベクトルの実装の話をしています
2023/09/21(木) 19:41:34.82ID:Ni0t8F+aM
Real Programmers Don't Use Python.
37デフォルトの名無しさん (ワッチョイ ff90-xbk3)
垢版 |
2023/09/21(木) 19:46:13.19ID:Xwg3U7a60
>>28
外人が日本に来て、日本人のここが変って言うのを時々耳にする。
君、その外人と被るね。
2023/09/21(木) 20:15:07.00ID:y6bj8vwO0
Real Programmers Don't Use Python.
39デフォルトの名無しさん (ワッチョイ 3f02-NfV8)
垢版 |
2023/09/21(木) 20:24:03.75ID:KmHbWfTj0
エクセルに乗るって話、どうなった?
40デフォルトの名無しさん (ワッチョイ 0f01-7CbB)
垢版 |
2023/09/21(木) 21:58:17.13ID:8LL53Ggb0
>>33
ベクトル演算をしたいならFortran, Julia, MATLAB, Octave, Rなどを使った方が良い。
Pythonなんかで無理な真似事をやる必要はない。
41デフォルトの名無しさん (ワッチョイ 0f57-hbIC)
垢版 |
2023/09/21(木) 22:13:43.64ID:fgR5jZhk0
>>40
程度問題
ベクトル演算といっても必ずしも大量データとは限らない
大体Pythonで書いてるプログラムの中で少しだけベクトル演算したいならPythonで書きたいと思うだろう
いちいち外部コマンド呼び出しとかFFIとか面倒だし
(まあNumPyはFFIのお化けみたいなものという話もあるけど)
明らかに数値解析用に作られた言語以外の、
広く使われる言語の中ではNumPyは結構使いやすいのは事実だし、
そう思えないなら他の言語でベクトル演算やったことないだろと言いたくなる。
2023/09/21(木) 22:40:39.81ID:QsWfOxg8M
それぞれがやり易い方法でやれば良いだけ
持論を押し付けるのはあたたたおか
43デフォルトの名無しさん (ワッチョイ 8f1b-shxo)
垢版 |
2023/09/21(木) 22:58:08.04ID:dRpJWBnA0
>>31
非力なLinuxPC使ってるからまず開発環境自体を入れるのが手間
オープンソースでクロスプラットフォームでデフォルトでGUIに対応している言語となると限られてくる
でもWindowsアプリケーションの開発環境の歴史を繰り返しているような錯覚に囚われて萎える
2023/09/22(金) 00:18:31.36ID:OBzsDe6x0
仮想環境つくるとき「venv」ディレクトリとしてる?
それとも「.venv」ディレクトリとしてる?

Linux環境でも仮想環境があることが分かるのでvenvディレクトリとしてるのだけど
.venvにした方が何かいいことあるのかな?
2023/09/22(金) 06:44:10.29ID:fANmuK6u0
Ruby のベクトル演算には、C で作られたNArray がある

速度は、NumPy, Octave にも匹敵する
2023/09/22(金) 06:53:13.62ID:fANmuK6u0
>>44
漏れは日本人が作った、多言語バージョンマネージャーのanyenv を使う。
同様のツールに、asdf もある

対応言語
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv

echo $(anyenv root)
/home/ユーザー名/.anyenv

echo $(rbenv root)
echo "$RBENV_ROOT"
/home/ユーザー名/.anyenv/envs/rbenv

echo $(nodenv root)
echo "$NODENV_ROOT"
/home/ユーザー名/.anyenv/envs/nodenv

ドット有りの隠しフォルダー以下の階層
/home/ユーザー名/.anyenv
2023/09/22(金) 07:44:43.00ID:ePK3KDDi0
適当なディレクトリにあるbatファイルに
python process1.py %1
みたいに書いてあるとする
別の場所には
python process2.py %1
という内容のbatがあって、それぞれ要求するバージョンや環境が違うとする

このままでは動かないけど、どう修正すると環境を指定して起動できる?
2023/09/22(金) 08:27:30.76ID:omzcMDXg0
>>47
venvつかう
2023/09/22(金) 08:44:39.13ID:ePK3KDDi0
コマンドラインからvenv使って今からここはバージョンいくつ、みたいにすれば
そこを使う環境が変わるのは判るけど、そんなことを意識せずにbatファイルからやれる気がしない

c:\python2\python.exe

c:\python3\python.exe
みたいに明示的にbatファイルに書いてしまうなら判る
でもvenvの方向はそうじゃない
50デフォルトの名無しさん (アウアウウー Sa53-9C00)
垢版 |
2023/09/22(金) 09:25:04.84ID:dkRHHNCea
python2 process1.py %1
python3 process2.py %1
でよろし
2023/09/22(金) 09:30:23.93ID:ePK3KDDi0
それをvenvで実現する方法
52デフォルトの名無しさん (アウアウウー Sa53-9C00)
垢版 |
2023/09/22(金) 10:00:57.22ID:dkRHHNCea
>意識せずに

それは無理な相談
53デフォルトの名無しさん (ワッチョイ cf55-Mp0W)
垢版 |
2023/09/22(金) 10:02:32.27ID:5tqxap7l0
>>49
venvではバージョン指定できないぞ
それぞれのpythonでvenvつくって、>>47のpythonコマンド実行するまえにvenv有効化すえうだけ
54デフォルトの名無しさん (ワッチョイ 3f7d-Mp0W)
垢版 |
2023/09/22(金) 10:29:08.07ID:omzcMDXg0
ていうか、venv有効化するのもコマンド一つだしbatに1行増えるだけやん
2023/09/22(金) 10:51:32.07ID:ePK3KDDi0
それを知りたいという話なんだけど
後片付けも要るから2行?
56デフォルトの名無しさん (アウアウウー Sa53-9C00)
垢版 |
2023/09/22(金) 11:18:53.51ID:dkRHHNCea
池沼か
57デフォルトの名無しさん (ワッチョイ 7f33-Mp0W)
垢版 |
2023/09/22(金) 11:33:43.46ID:V3n+vAsd0
>>55
お前の主張は>>49だろ
どこからvenvの使い方教えてくださいに変わったんだよ
58デフォルトの名無しさん (ワッチョイ ff90-xbk3)
垢版 |
2023/09/22(金) 13:01:58.55ID:UkJanLOo0
相手しないほうがいいよ。
2023/09/22(金) 13:10:23.39ID:cezsAHx60
各バッチスクリプト内でvenv有効化/無効化するのはなんか違うよね
せめてdirenvみたいなので自動で有効化/無効化したほうがいいと思うけど
Windowsでそれができるツールがあるのかは知らない

そういうツールがないようならvenvだけだと面倒だからPipenv使えばいいと思う
それぞれのディレクトリでPipfile整備して`pipenv run python process1.py %1`みたいにすればいい
Python自体のバージョン指定と依存ライブラリのバージョン指定をPipfileで一括管理できるので管理や環境の再構築が楽
2023/09/22(金) 13:16:23.44ID:ePK3KDDi0
Pipenv調べてみる
もうenvいろいろありすぎ
多分それぞれにあんまり便利じゃなくて決定版が無いんだろうな
61デフォルトの名無しさん (ワッチョイ 4f05-hs9u)
垢版 |
2023/09/22(金) 14:07:29.76ID:bGXmAjFl0
Windowsはデフォルトでpyランチャーがあるからバージョン管理とても簡単だけどmacは大変らしい
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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