↑スレ立てる毎に減るので、減ってたら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
探検
Pythonのお勉強 Part71
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ワッチョイ cffb-p/wP)
2023/09/20(水) 09:13:41.41ID:u6xixiUt02デフォルトの名無しさん (ワッチョイ 7ffb-p/wP)
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
【まず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
3デフォルトの名無しさん (ワッチョイ 7ffb-p/wP)
2023/09/20(水) 09:16:07.33ID:u6xixiUt04デフォルトの名無しさん (アウアウウー Sa53-9C00)
2023/09/20(水) 09:19:24.04ID:R98wQa7Ya >1
先頭の三行全部消えてるぞ
やり直せ
先頭の三行全部消えてるぞ
やり直せ
5デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/20(水) 09:44:04.60ID:VS2jxSdT0 前スレの時点で無くなってたんだけどな
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。
6デフォルトの名無しさん (ワンミングク MM9f-gAwE)
2023/09/20(水) 12:26:44.56ID:Srz1WE4FM ワッチョイ知らないのに立てるやつら…
7デフォルトの名無しさん (ワッチョイ 0f05-xDIo)
2023/09/20(水) 14:10:48.76ID:UfpBE+4Y0 ついてるから最後の一行だったんだ
それか一行だけ付けたか
それか一行だけ付けたか
8デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/20(水) 14:22:33.61ID:VS2jxSdT0 ワッショイありスレだからワッショイありにする文字列を普通に付けた
減ってたら云々の注意書きは読んでない
減ってたら云々の注意書きは読んでない
9デフォルトの名無しさん (ワッチョイ cf68-qlbr)
2023/09/20(水) 20:06:31.74ID:H1LuggNZ0 わっしょい!
10デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/20(水) 20:17:28.20ID:VS2jxSdT0 3つのWをテーマとしてpythonを勉強していきます
11デフォルトの名無しさん (ワッチョイ 8f1b-shxo)
2023/09/20(水) 22:05:58.75ID:Kv43bxUF0 最近Pythonを勉強し始めたけどなんかもう嫌になってきた
12デフォルトの名無しさん (テテンテンテン MM4f-YL/b)
2023/09/21(木) 06:40:49.16ID:iHUyD9fXM13デフォルトの名無しさん (アウアウアー Sa8f-hs9u)
2023/09/21(木) 06:58:37.77ID:JP0yrx1ca Pythonって標準ライブラリでも
reとglobで正規表現の文法違うのってなんでですか?
re, globの文法の厳密な定義みたいのが公式ドキュメントで見つからなかったのですがどこにありますか?
reとglobで正規表現の文法違うのってなんでですか?
re, globの文法の厳密な定義みたいのが公式ドキュメントで見つからなかったのですがどこにありますか?
14デフォルトの名無しさん (ワッチョイ ff90-xbk3)
2023/09/21(木) 08:04:41.22ID:Xwg3U7a60 他人が作ったものの仕様の理由を聞く意味はない。
他人が作った仕様に文句を言うのも意味はない。
嫌なら、自分で代わりのものを作ればいい。
他人が作った仕様に文句を言うのも意味はない。
嫌なら、自分で代わりのものを作ればいい。
15デフォルトの名無しさん (テテンテンテン MM4f-YL/b)
2023/09/21(木) 08:28:10.71ID:TFH4YUGIM 雑談したいがための無意味な質問はやめて欲しいね
16デフォルトの名無しさん (テテンテンテン MM4f-hQzC)
2023/09/21(木) 09:35:51.71ID:GkZJhn7VM17デフォルトの名無しさん (アウアウアー Sa8f-hs9u)
2023/09/21(木) 09:37:07.46ID:VtU3IO45a18デフォルトの名無しさん (ワッチョイ 8f30-UT3o)
2023/09/21(木) 10:08:33.58ID:MRVbmaTe0 >>13
globは正規表現ではなく、fnmatch.fnmatch()を使用したパターンマッチ。もともと違うものなので文法も違って当然
globは正規表現ではなく、fnmatch.fnmatch()を使用したパターンマッチ。もともと違うものなので文法も違って当然
19デフォルトの名無しさん (ワッチョイ 8f30-UT3o)
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,
下記だそうなので、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:l2X1fRqa022デフォルトの名無しさん (ワッチョイ 3f6a-NFpK)
2023/09/21(木) 12:18:15.49ID:RdJljcgO0 いいね、そういうの
もう少し基礎学習進めたらそういう画像処理を絡めたお題に挑戦してみたい
もう少し基礎学習進めたらそういう画像処理を絡めたお題に挑戦してみたい
23デフォルトの名無しさん (ワッチョイ ffcd-gAwE)
2023/09/21(木) 12:52:27.44ID:fwEEIjg70 pythonが楽で他の言語触るのがいやになったな
24デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/21(木) 13:19:09.95ID:vUbuGSr00 簡易言語でカスタマイズできる系のツールの不出来な文法に、
pythonそのまま使えよと思う
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万円
を提示できる新人事制度の導入に向けて調整中であることが、共に日経
クロステックの取材で分かった。
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のことですね判ります
Excelのことですね判ります
28デフォルトの名無しさん (ワッチョイ 8f1b-shxo)
2023/09/21(木) 17:39:53.63ID:3+rVBsX8029デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/21(木) 17:52:26.27ID:vUbuGSr00 ルールはゆるい方が作りやすい
いちいち自分で申請書書いて自分で受理してからしか飯が食えない生活とか嫌だろ
いちいち自分で申請書書いて自分で受理してからしか飯が食えない生活とか嫌だろ
30デフォルトの名無しさん (ワッチョイ cf5e-63EM)
2023/09/21(木) 18:08:20.40ID:qrfAaXPq0 自分はC#よりpythonを触る時間が多くなった
31デフォルトの名無しさん (テテンテンテン MM4f-hQzC)
2023/09/21(木) 18:56:08.52ID:GkZJhn7VM32デフォルトの名無しさん (テテンテンテン MM4f-YL/b)
2023/09/21(木) 19:05:31.00ID:TFH4YUGIM33デフォルトの名無しさん (ワッチョイ 0f01-xbk3)
2023/09/21(木) 19:18:10.84ID:IjVngpsR0 numpyはベクトル演算だから初心者にはちょっと理解しづらいはず
といってnumpyはpythonの最高のライブラリだからこれを避けて学ぶわけにもいかない
ベクトル演算とはどういうものかを基礎から習得していくしかないな
といってnumpyはpythonの最高のライブラリだからこれを避けて学ぶわけにもいかない
ベクトル演算とはどういうものかを基礎から習得していくしかないな
34デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/21(木) 19:29:17.42ID:vUbuGSr00 numpyは要らない人はずっと要らない
必要な人は既にベクトルくらい知ってる
必要な人は既にベクトルくらい知ってる
35デフォルトの名無しさん (ワッチョイ 0f79-R902)
2023/09/21(木) 19:37:19.62ID:4pc6shKb0 ベクトルの実装の話をしています
36デフォルトの名無しさん (ブーイモ MM5f-C+1d)
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:Xwg3U7a6038デフォルトの名無しさん (ワッチョイ 8f93-C+1d)
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:8LL53Ggb041デフォルトの名無しさん (ワッチョイ 0f57-hbIC)
2023/09/21(木) 22:13:43.64ID:fgR5jZhk0 >>40
程度問題
ベクトル演算といっても必ずしも大量データとは限らない
大体Pythonで書いてるプログラムの中で少しだけベクトル演算したいならPythonで書きたいと思うだろう
いちいち外部コマンド呼び出しとかFFIとか面倒だし
(まあNumPyはFFIのお化けみたいなものという話もあるけど)
明らかに数値解析用に作られた言語以外の、
広く使われる言語の中ではNumPyは結構使いやすいのは事実だし、
そう思えないなら他の言語でベクトル演算やったことないだろと言いたくなる。
程度問題
ベクトル演算といっても必ずしも大量データとは限らない
大体Pythonで書いてるプログラムの中で少しだけベクトル演算したいならPythonで書きたいと思うだろう
いちいち外部コマンド呼び出しとかFFIとか面倒だし
(まあNumPyはFFIのお化けみたいなものという話もあるけど)
明らかに数値解析用に作られた言語以外の、
広く使われる言語の中ではNumPyは結構使いやすいのは事実だし、
そう思えないなら他の言語でベクトル演算やったことないだろと言いたくなる。
42デフォルトの名無しさん (テテンテンテン MM4f-YL/b)
2023/09/21(木) 22:40:39.81ID:QsWfOxg8M それぞれがやり易い方法でやれば良いだけ
持論を押し付けるのはあたたたおか
持論を押し付けるのはあたたたおか
43デフォルトの名無しさん (ワッチョイ 8f1b-shxo)
2023/09/21(木) 22:58:08.04ID:dRpJWBnA0 >>31
非力なLinuxPC使ってるからまず開発環境自体を入れるのが手間
オープンソースでクロスプラットフォームでデフォルトでGUIに対応している言語となると限られてくる
でもWindowsアプリケーションの開発環境の歴史を繰り返しているような錯覚に囚われて萎える
非力なLinuxPC使ってるからまず開発環境自体を入れるのが手間
オープンソースでクロスプラットフォームでデフォルトでGUIに対応している言語となると限られてくる
でもWindowsアプリケーションの開発環境の歴史を繰り返しているような錯覚に囚われて萎える
44デフォルトの名無しさん (ワッチョイ ff02-lu2b)
2023/09/22(金) 00:18:31.36ID:OBzsDe6x0 仮想環境つくるとき「venv」ディレクトリとしてる?
それとも「.venv」ディレクトリとしてる?
Linux環境でも仮想環境があることが分かるのでvenvディレクトリとしてるのだけど
.venvにした方が何かいいことあるのかな?
それとも「.venv」ディレクトリとしてる?
Linux環境でも仮想環境があることが分かるのでvenvディレクトリとしてるのだけど
.venvにした方が何かいいことあるのかな?
45デフォルトの名無しさん (ワッチョイ 3f81-mbMR)
2023/09/22(金) 06:44:10.29ID:fANmuK6u0 Ruby のベクトル演算には、C で作られたNArray がある
速度は、NumPy, Octave にも匹敵する
速度は、NumPy, Octave にも匹敵する
46デフォルトの名無しさん (ワッチョイ 3f81-mbMR)
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
漏れは日本人が作った、多言語バージョンマネージャーの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
47デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/22(金) 07:44:43.00ID:ePK3KDDi0 適当なディレクトリにあるbatファイルに
python process1.py %1
みたいに書いてあるとする
別の場所には
python process2.py %1
という内容のbatがあって、それぞれ要求するバージョンや環境が違うとする
このままでは動かないけど、どう修正すると環境を指定して起動できる?
python process1.py %1
みたいに書いてあるとする
別の場所には
python process2.py %1
という内容のbatがあって、それぞれ要求するバージョンや環境が違うとする
このままでは動かないけど、どう修正すると環境を指定して起動できる?
48デフォルトの名無しさん (ワッチョイ 3f7d-Mp0W)
2023/09/22(金) 08:27:30.76ID:omzcMDXg0 >>47
venvつかう
venvつかう
49デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/22(金) 08:44:39.13ID:ePK3KDDi0 コマンドラインからvenv使って今からここはバージョンいくつ、みたいにすれば
そこを使う環境が変わるのは判るけど、そんなことを意識せずにbatファイルからやれる気がしない
c:\python2\python.exe
と
c:\python3\python.exe
みたいに明示的にbatファイルに書いてしまうなら判る
でも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
でよろし
python3 process2.py %1
でよろし
51デフォルトの名無しさん (ワッチョイ cf54-VRQG)
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:5tqxap7l054デフォルトの名無しさん (ワッチョイ 3f7d-Mp0W)
2023/09/22(金) 10:29:08.07ID:omzcMDXg0 ていうか、venv有効化するのもコマンド一つだしbatに1行増えるだけやん
55デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/22(金) 10:51:32.07ID:ePK3KDDi0 それを知りたいという話なんだけど
後片付けも要るから2行?
後片付けも要るから2行?
56デフォルトの名無しさん (アウアウウー Sa53-9C00)
2023/09/22(金) 11:18:53.51ID:dkRHHNCea 池沼か
57デフォルトの名無しさん (ワッチョイ 7f33-Mp0W)
2023/09/22(金) 11:33:43.46ID:V3n+vAsd058デフォルトの名無しさん (ワッチョイ ff90-xbk3)
2023/09/22(金) 13:01:58.55ID:UkJanLOo0 相手しないほうがいいよ。
59デフォルトの名無しさん (ワッチョイ 0f01-nyFJ)
2023/09/22(金) 13:10:23.39ID:cezsAHx60 各バッチスクリプト内でvenv有効化/無効化するのはなんか違うよね
せめてdirenvみたいなので自動で有効化/無効化したほうがいいと思うけど
Windowsでそれができるツールがあるのかは知らない
そういうツールがないようならvenvだけだと面倒だからPipenv使えばいいと思う
それぞれのディレクトリでPipfile整備して`pipenv run python process1.py %1`みたいにすればいい
Python自体のバージョン指定と依存ライブラリのバージョン指定をPipfileで一括管理できるので管理や環境の再構築が楽
せめてdirenvみたいなので自動で有効化/無効化したほうがいいと思うけど
Windowsでそれができるツールがあるのかは知らない
そういうツールがないようならvenvだけだと面倒だからPipenv使えばいいと思う
それぞれのディレクトリでPipfile整備して`pipenv run python process1.py %1`みたいにすればいい
Python自体のバージョン指定と依存ライブラリのバージョン指定をPipfileで一括管理できるので管理や環境の再構築が楽
60デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/22(金) 13:16:23.44ID:ePK3KDDi0 Pipenv調べてみる
もうenvいろいろありすぎ
多分それぞれにあんまり便利じゃなくて決定版が無いんだろうな
もうenvいろいろありすぎ
多分それぞれにあんまり便利じゃなくて決定版が無いんだろうな
61デフォルトの名無しさん (ワッチョイ 4f05-hs9u)
2023/09/22(金) 14:07:29.76ID:bGXmAjFl0 Windowsはデフォルトでpyランチャーがあるからバージョン管理とても簡単だけどmacは大変らしい
62デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/22(金) 14:10:58.23ID:ePK3KDDi0 py.exeが別のpythonを呼び出す時に引数をうまく渡してくれないので、
それはそれで使いたくないんだよな
それはそれで使いたくないんだよな
63デフォルトの名無しさん (ワッチョイ cf55-Mp0W)
2023/09/22(金) 15:08:22.77ID:5tqxap7l0 >>55の1行ですむ後片付けってなに?
venv使う使わないはもうどうでもいいから、これだけ教えてくれ
venv使う使わないはもうどうでもいいから、これだけ教えてくれ
64デフォルトの名無しさん (ワッチョイ ff7b-lf6v)
2023/09/22(金) 15:37:47.85ID:el8Vm2jw0 BATの中は新しい環境だからdeactivateいらんのがわかってない
65デフォルトの名無しさん (ワッチョイ cf55-Mp0W)
2023/09/22(金) 18:03:31.10ID:5tqxap7l0 venvという名の全く別物である可能性も
66デフォルトの名無しさん (アウアウウー Sa53-p/wP)
2023/09/22(金) 18:39:03.50ID:7nC0Dploa 素人はpipとconda以外さわるな
homebrewとか絶対使っちゃだめだぞ
おちんちん大っきくなっちゃくからな
homebrewとか絶対使っちゃだめだぞ
おちんちん大っきくなっちゃくからな
67デフォルトの名無しさん (ワッチョイ cf54-VRQG)
2023/09/22(金) 21:52:59.89ID:ePK3KDDi0 え、venvって環境変数だけで実現してるの?
68デフォルトの名無しさん (アウアウクー MM23-hs9u)
2023/09/22(金) 23:08:38.83ID:EWgIfaOrM 環境がぶっ壊れないことと、作業ディレクトリに必要なライブラリがすべて入るポータブル性だけ要求するならvenvは高機能すぎる気がするけど、
容量の効率性無視でとにかく使いたいスクリプトが動くように全て作業ディレクトリに環境用意してくれるようなライブラリってあるんですかね
容量の効率性無視でとにかく使いたいスクリプトが動くように全て作業ディレクトリに環境用意してくれるようなライブラリってあるんですかね
69デフォルトの名無しさん (ワッチョイ ff7b-lf6v)
2023/09/22(金) 23:16:15.48ID:el8Vm2jw0 venv --copiesのこと?
共有ライブラリの依存も嫌ならPython本体をスタティックリンクするとか
共有ライブラリの依存も嫌ならPython本体をスタティックリンクするとか
70デフォルトの名無しさん (ワッチョイ d35d-cyss)
2023/09/23(土) 01:44:58.14ID:HGxCD3ya0 >>61
MacでもWinでもLinuxでもpyenvとpoetryで実行環境のバージョンは同じコマンドで管理できるよ。
MacでもWinでもLinuxでもpyenvとpoetryで実行環境のバージョンは同じコマンドで管理できるよ。
71デフォルトの名無しさん (スップ Sd4a-bMOT)
2023/09/23(土) 07:19:29.70ID:aQF8TmPAd >>62
py.exeって引数をうまく渡してくれないの?
py.exeって引数をうまく渡してくれないの?
72デフォルトの名無しさん (ワッチョイ 63ad-IPbP)
2023/09/23(土) 07:39:16.67ID:d+5nAcW50 virtualenvでいいじゃん
73デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/23(土) 09:43:23.24ID:i9fpyxKga >>68
anacondaにしとけ
anacondaにしとけ
74デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/23(土) 09:49:00.12ID:s8duiTph0 >>49
venv環境の中にはそれぞれpython.exeが置いてあるからそのパスを直接指定すれば同じことができる。
venv環境の中にはそれぞれpython.exeが置いてあるからそのパスを直接指定すれば同じことができる。
75デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/23(土) 10:07:24.48ID:CxeGIQq5M こんにちは
久しぶりにpython触ったら明示的な型指定が導入されたみたいで喜んでたけど
実際は型を無視した代入や引数を渡せてしまうねw
型ヒントで何も制約できないんだな
これを有効に活用できる局面ってなんなんだ?
VSCodeでもエラー表示などがないんだけどプラグイン次第で何かしてくれるのかな?
久しぶりにpython触ったら明示的な型指定が導入されたみたいで喜んでたけど
実際は型を無視した代入や引数を渡せてしまうねw
型ヒントで何も制約できないんだな
これを有効に活用できる局面ってなんなんだ?
VSCodeでもエラー表示などがないんだけどプラグイン次第で何かしてくれるのかな?
76デフォルトの名無しさん (ワッチョイ 8a7d-GA9g)
2023/09/23(土) 10:20:35.22ID:BABnIcFf0 >>74
それvenv使う意味ないだろ
それvenv使う意味ないだろ
77デフォルトの名無しさん (テテンテンテン MMc6-k5Et)
2023/09/23(土) 11:26:41.25ID:o5mjK/05M78デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/23(土) 12:30:04.78ID:/sRqhdcI0 型ヒントはそれ単体では役立たなくても、開発環境と合わせると便利になる
79デフォルトの名無しさん (ワッチョイ 2b99-IWg1)
2023/09/23(土) 12:54:39.76ID:adi3U+Mp0 型アレルギー持ちPythonユーザーが炙り出されたようだな
80デフォルトの名無しさん (テテンテンテン MMc6-1ddl)
2023/09/23(土) 13:11:46.73ID:9zAj6sEFM 型型やかましいわ
pydantic使えよ
pydantic使えよ
81デフォルトの名無しさん (ワッチョイ ffd4-JuM4)
2023/09/23(土) 17:55:51.88ID:AkoBTn5S0 型ヒントつけないとインテリセンスにでてこないからつけるわ
82デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/23(土) 20:55:02.75ID:s8duiTph0 動的型付けスクリプト言語で規模が大きくなってきたら「ここにはこんなデータが来る」って
コメントを書いておかないと訳が分からなくなる。
それを処理系でチェックしてくれて間違いを減らせるようになったようなもの。
コメントを書いておかないと訳が分からなくなる。
それを処理系でチェックしてくれて間違いを減らせるようになったようなもの。
83デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/23(土) 20:55:14.77ID:s8duiTph0 動的型付けスクリプト言語で規模が大きくなってきたら「ここにはこんなデータが来る」って
コメントを書いておかないと訳が分からなくなる。
それを処理系でチェックしてくれて間違いを減らせるようになったようなもの。
コメントを書いておかないと訳が分からなくなる。
それを処理系でチェックしてくれて間違いを減らせるようになったようなもの。
84デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/23(土) 21:00:22.56ID:/sRqhdcI0 処理系でチェックしないやん、という話
85デフォルトの名無しさん (ワッチョイ 0ada-sj2L)
2023/09/23(土) 21:41:01.16ID:piK9W+al0 mypy使ってるけど型推論が貧弱なのでもっと強力にして欲しい
86デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/23(土) 21:47:50.75ID:s8duiTph0 >>84
処理系と開発環境は別物って話?
処理系と開発環境は別物って話?
87デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/23(土) 21:57:53.53ID:/sRqhdcI0 コンパイラとかインタプリタとかCPUが処理系
エディタとかドキュメントは処理系じゃない
学校の理系の建物付近にある食堂の名前が「お食事処理系」で、処理系にしか見えなかった
エディタとかドキュメントは処理系じゃない
学校の理系の建物付近にある食堂の名前が「お食事処理系」で、処理系にしか見えなかった
88デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/23(土) 22:24:50.97ID:s8duiTph0 なるほど、じゃあそれでいいよ。自分の認識じゃあ構文解析は処理系の範疇だったんでああ書いただけで。
89デフォルトの名無しさん (テテンテンテン MMc6-1ddl)
2023/09/23(土) 23:23:06.47ID:lai5+1qVM どうでもいいことだよな
誰か困ってるヤツいるのかね?
誰か困ってるヤツいるのかね?
90デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/23(土) 23:38:08.29ID:CxeGIQq5M 正直なところ俺が困ってるw
tsみたいな仕組みでいいからどこかで型チェックを保証してくれw
tsみたいな仕組みでいいからどこかで型チェックを保証してくれw
91デフォルトの名無しさん (ワッチョイ 1efb-xg+T)
2023/09/23(土) 23:51:47.49ID:VsKxPq+H0 構文解析と字句解析が近藤さんの人ガイル
92デフォルトの名無しさん (ワッチョイ 1efb-xg+T)
2023/09/23(土) 23:53:03.90ID:VsKxPq+H0 音速衝撃波!!
93デフォルトの名無しさん (ワッチョイ 1efb-xg+T)
2023/09/23(土) 23:53:47.10ID:VsKxPq+H0 (((( 💪
94デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/24(日) 00:01:09.63ID:9leOLZhk0 >>90
やってることはあまり変わらんけどな。tsはトランスパイルというステップがあるから
そこでエラーとしてはじいているだけで、
Types as Comments だと python と同じような感じなんだろうな。
やってることはあまり変わらんけどな。tsはトランスパイルというステップがあるから
そこでエラーとしてはじいているだけで、
Types as Comments だと python と同じような感じなんだろうな。
95デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/24(日) 00:02:06.03ID:Oioe+GVvM96デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/24(日) 00:11:10.51ID:9leOLZhk0 >>91
そこは字句解析じゃなくて意味解析じゃないか?
そこは字句解析じゃなくて意味解析じゃないか?
97デフォルトの名無しさん (テテンテンテン MMc6-k5Et)
2023/09/24(日) 07:37:29.76ID:Ri8XQsCRM >>90
型宣言とカッコを省略したことでコードをシンプルに保つ方向に振りきったのがPythonという言語
それをなぜ崩そうとするのか
型ヒントを使ったコードを見たことがあるか?
あんなのはもうPythonじゃない
頼むから大人しくC#やJavaを使っててくれ
型宣言とカッコを省略したことでコードをシンプルに保つ方向に振りきったのがPythonという言語
それをなぜ崩そうとするのか
型ヒントを使ったコードを見たことがあるか?
あんなのはもうPythonじゃない
頼むから大人しくC#やJavaを使っててくれ
98デフォルトの名無しさん (テテンテンテン MMc6-1ddl)
2023/09/24(日) 08:15:46.12ID:hltzsV5kM99デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/24(日) 09:30:39.81ID:2YTVyUlCa100デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/24(日) 09:33:06.56ID:2YTVyUlCa101デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/24(日) 09:33:53.86ID:2YTVyUlCa102デフォルトの名無しさん (ワッチョイ a70d-IWg1)
2023/09/24(日) 10:58:42.55ID:Kcpwutr20 型ヒントに親でも殺されたのか?
使いたくなければ使わないだけの話なのに
使いたくなければ使わないだけの話なのに
103デフォルトの名無しさん (ワッチョイ bbb1-4mfa)
2023/09/24(日) 11:02:47.99ID:+gAzw3Ne0 python使ってると、もうC++で書くきがしないよね。
104デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/24(日) 11:05:04.02ID:RJSP/rbZ0 Cでは今でも書いてるけど、C++は書いたことないな
拡張子だけcppで複素数とか使ってるけどクラスは使ってない、程度なら書いた
拡張子だけcppで複素数とか使ってるけどクラスは使ってない、程度なら書いた
105デフォルトの名無しさん (ワッチョイ 0ada-sj2L)
2023/09/24(日) 13:17:50.18ID:9U+Q8xyt0 python使いたくないんだけどpythonにしかないライブラリを再発明するパワーもないので仕方なく使っている
106デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/24(日) 13:23:16.93ID:RJSP/rbZ0 こんなソフト無いかなと検索しても、windows用が無くてandroid用しか見つからないようなもんか
107デフォルトの名無しさん (ワッチョイ ffe3-JuM4)
2023/09/24(日) 13:29:34.13ID:l4Xb0TnP0108デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/24(日) 13:42:18.77ID:2YTVyUlCa >>105
Nim使えばいい
Nim使えばいい
109デフォルトの名無しさん (ワッチョイ 1e34-oA3n)
2023/09/24(日) 14:31:18.01ID:CVj1/D3K0 C++はソフトウェアに最小限必要な制約の記述と
最適化に関する記述を分離できていない
全部ごっちゃ
その意味ではRustも大差ない
最適化に関する記述を分離できていない
全部ごっちゃ
その意味ではRustも大差ない
110デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/24(日) 15:03:52.20ID:9leOLZhk0 >>108
pythonのライブラリ使えるのか?
pythonのライブラリ使えるのか?
111デフォルトの名無しさん (スフッ Sdaa-TrDt)
2023/09/24(日) 15:21:16.70ID:PsXnhINod 馬鹿には無理
112デフォルトの名無しさん (ワッチョイ bbb1-4mfa)
2023/09/24(日) 15:34:59.57ID:+gAzw3Ne0113デフォルトの名無しさん (ワッチョイ ab1b-zG+p)
2023/09/24(日) 15:44:30.62ID:a7FFFuge0 Qtが企業だと知って萎えた
無料で仕事してくれる人なんていないよね
無料で仕事してくれる人なんていないよね
114デフォルトの名無しさん (ワッチョイ 0ada-sj2L)
2023/09/24(日) 17:14:53.18ID:9U+Q8xyt0 >>108
Nim使うからRust使うわ
Nim使うからRust使うわ
115デフォルトの名無しさん (ワッチョイ a7a7-iHBT)
2023/09/25(月) 08:05:09.08ID:or0ZXPD90 >>97
型宣言付けたら自動補完きくからコード書きやすいだろ
バグ取りも圧倒的に楽だし
他人のコード読むなら絶対あったほうが楽
見た目が醜いのはそうだけど静的型チェックなんだから自分しか使わないならいらないと感じたとこで消せばいい
Pythonはカッコ少ないのは美点だと思うけどじゃあprintもカッコなくして文に戻してよって思う
型宣言付けたら自動補完きくからコード書きやすいだろ
バグ取りも圧倒的に楽だし
他人のコード読むなら絶対あったほうが楽
見た目が醜いのはそうだけど静的型チェックなんだから自分しか使わないならいらないと感じたとこで消せばいい
Pythonはカッコ少ないのは美点だと思うけどじゃあprintもカッコなくして文に戻してよって思う
116デフォルトの名無しさん (ワッチョイ a7a7-iHBT)
2023/09/25(月) 08:08:58.57ID:or0ZXPD90 型チェックを憎むやつの正体
・IDE嫌いの老害
・メソッド名や属性名を全て覚えておりどの変数に何が入っているか全て知っている天才
・簡単で汎用性の極めて乏しいスクリプトしか書かない人
・numpyなどで実質型指定の恩恵を受けている
・IDE嫌いの老害
・メソッド名や属性名を全て覚えておりどの変数に何が入っているか全て知っている天才
・簡単で汎用性の極めて乏しいスクリプトしか書かない人
・numpyなどで実質型指定の恩恵を受けている
117デフォルトの名無しさん (ワッチョイ 86fc-4KCz)
2023/09/25(月) 08:47:06.87ID:doWFzkf50 >>115
静的型チェックではないぞ
静的型チェックではないぞ
118デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 09:07:43.95ID:rxWsx5B/0 文字か数かは見れば判るし、
リストとか辞書の場合は、変数名をそうしておかないと型チェック以前に書くのに困る
なんちゃってハンガリアンで十分
現状困ってないのに型チェックを導入するのは、理不尽なコーディング規約みたいなもので、
慎重になった方がいい
リストとか辞書の場合は、変数名をそうしておかないと型チェック以前に書くのに困る
なんちゃってハンガリアンで十分
現状困ってないのに型チェックを導入するのは、理不尽なコーディング規約みたいなもので、
慎重になった方がいい
119デフォルトの名無しさん (アウアウクー MM63-iHBT)
2023/09/25(月) 09:45:41.16ID:c51+DnWAM >>117
型付けが動的なだけで型チェックは静的
型付けが動的なだけで型チェックは静的
120デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 09:52:10.17ID:rxWsx5B/0 型付けの静的/動的とチェックの静的/動的は意味が違う
121デフォルトの名無しさん (ワッチョイ 6ae2-IWg1)
2023/09/25(月) 10:44:27.45ID:rOgiuc6x0 現状困ってなくてもエディタの入力補完の恩恵を受けられるようになるのは大きなメリットだと思うけどな
122デフォルトの名無しさん (ワッチョイ 46ef-rDwG)
2023/09/25(月) 11:19:52.99ID:2mEvB7200123デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 11:33:59.63ID:rxWsx5B/0 for data in data_list:
とかよく書くけどな
複数形を使うのはあんまりいい方法と思えない
とかよく書くけどな
複数形を使うのはあんまりいい方法と思えない
124デフォルトの名無しさん (アウアウクー MM63-iHBT)
2023/09/25(月) 12:04:10.57ID:c51+DnWAM x_intとかx_strみたいな変数名のことじゃなくて?
型アノテーションなかった頃は見てわかる変数名はいいアイディアだったと思うけど今はアノテーション使って書くな
data_listみたいな名付けはする
datas, xsは最悪だと思うけどx_listだと長過ぎるように感じて悩んでる
この辺ってルールあるの?
型アノテーションなかった頃は見てわかる変数名はいいアイディアだったと思うけど今はアノテーション使って書くな
data_listみたいな名付けはする
datas, xsは最悪だと思うけどx_listだと長過ぎるように感じて悩んでる
この辺ってルールあるの?
125デフォルトの名無しさん (ワッチョイ ea5c-ALFE)
2023/09/25(月) 12:38:00.66ID:zuFHd0dz0 datumの複数形がdata
もしくは不可算名詞の単数形としてのdata
datasは間違い
もしくは不可算名詞の単数形としてのdata
datasは間違い
126デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 12:47:41.75ID:rxWsx5B/0 リストは複数形、というルールにしたとしても、辞書はどうするんだっていう
名前に型含めると噛みつくうざい人がいたとしても、含めた方がいい
名前に型含めると噛みつくうざい人がいたとしても、含めた方がいい
127デフォルトの名無しさん (ワッチョイ 1efb-xg+T)
2023/09/25(月) 12:56:23.29ID:sPLXdhtl0 オナーニばかりしてんちゃうぞ
pep8の通りにやることめざしゃ
pep8の通りにやることめざしゃ
128デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/25(月) 12:59:59.83ID:RmxLVxNPa それ良く言われるけど
英文法の例外に合わせる必要なんてない
hogeがあったら機械的にhogesにする
Railsでも採用されてるnameイングルール
英文法の例外に合わせる必要なんてない
hogeがあったら機械的にhogesにする
Railsでも採用されてるnameイングルール
129デフォルトの名無しさん (ワッチョイ 1e46-w4ab)
2023/09/25(月) 13:00:41.69ID:3JRaW9kj0130デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/25(月) 13:01:12.12ID:RmxLVxNPa datasをdata_seriesの略だとする言い訳もある
131デフォルトの名無しさん (ワッチョイ e3ed-IWg1)
2023/09/25(月) 13:01:37.98ID:QOTHJNXA0 型の判別のためではなく、それが何かを表すために変数名にdicを含めることは普通にあるだろう
結果として型名が含まれてるだけであってそれをレビューで弾く必要はなかろう
結果として型名が含まれてるだけであってそれをレビューで弾く必要はなかろう
132デフォルトの名無しさん (ワッチョイ 46ef-rDwG)
2023/09/25(月) 13:05:46.35ID:2mEvB7200 ほんとに辞書ならdictでいいよ
request_header_dict
は止めてほしい
request_header_dict
は止めてほしい
133デフォルトの名無しさん (ワッチョイ e3ed-IWg1)
2023/09/25(月) 13:41:51.05ID:QOTHJNXA0 意味、役割が辞書的なものなら実際の型によらずdictでも別にいいと思うけどな
134デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 13:49:27.17ID:rxWsx5B/0 perlは楽だった
$dataと@dataと%dataが同時に使えて、
リストなのか辞書なのか見ただけで判るし名前で苦労しない
$dataと@dataと%dataが同時に使えて、
リストなのか辞書なのか見ただけで判るし名前で苦労しない
135デフォルトの名無しさん (ワッチョイ 1e46-w4ab)
2023/09/25(月) 14:10:52.93ID:3JRaW9kj0 >>134
ハンガリアン記法で代替すりゃいいじゃない。
ハンガリアン記法で代替すりゃいいじゃない。
136デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 14:18:03.40ID:rxWsx5B/0 まあ、@dataとdata_list、%dataとdata_dictが同じものなので、
記号で書くか文字列で書くかの違いだけなんだけど
実際、perlから移植する時はそんなふうに機械的に置き換えてる
記号で書くか文字列で書くかの違いだけなんだけど
実際、perlから移植する時はそんなふうに機械的に置き換えてる
137デフォルトの名無しさん (スプッッ Sd4a-+j9z)
2023/09/25(月) 19:20:02.88ID:BYuYgOypd138デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 19:33:05.13ID:rxWsx5B/0 規模が大きくなると訳が判らなくなっても仕方ない
という諦めに抗い続けたのが言語の進化の歴史なんよ
という諦めに抗い続けたのが言語の進化の歴史なんよ
139デフォルトの名無しさん (ワッチョイ 0602-oehB)
2023/09/25(月) 19:38:40.05ID:sd9Bn/Fb0 処理系は処理系で必死に変数の型をなくそうと努力し、
利用する側は利用する側で変数の型を意識しやすくしようと努力する
利用する側は利用する側で変数の型を意識しやすくしようと努力する
140デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 20:02:55.68ID:rxWsx5B/0 一部の人が苦しい思いをしながら型を意識して書いたライブラリを、
大半の人は型なんか意識せずに気軽に使う、という分業が今のところの正解なのだろう
一つの言語だけで全体をカバーするのは無理
大半の人は型なんか意識せずに気軽に使う、という分業が今のところの正解なのだろう
一つの言語だけで全体をカバーするのは無理
141デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/25(月) 20:19:47.64ID:v3kx0nZB0142デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 20:28:32.03ID:rxWsx5B/0 見れば判るコードが一番いいコードなんだよ
なんで難解さをドヤれるんだ
なんで難解さをドヤれるんだ
143デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/25(月) 20:33:17.65ID:9KhxBWdoM144デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/25(月) 20:34:55.62ID:v3kx0nZB0145デフォルトの名無しさん (ワッチョイ bb48-NSUt)
2023/09/25(月) 20:35:22.38ID:+xNGfQXE0 フェレイゼンも30年の研究の結果
プログラミングには型が必要だとわかったといってた
プログラミングには型が必要だとわかったといってた
146デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/25(月) 20:39:42.84ID:9KhxBWdoM 小さいプログラムしか書かない人は型が要らないと言う
別に書くことを強制されてるわけでもないのに
小さくてもファイル3個ぐらいに別れてたら絶対型がいる
別に書くことを強制されてるわけでもないのに
小さくてもファイル3個ぐらいに別れてたら絶対型がいる
147デフォルトの名無しさん (ワッチョイ 0690-44ew)
2023/09/25(月) 20:43:06.80ID:i7V/7hMm0 設計書ないの?
148デフォルトの名無しさん (ワッチョイ 1efb-xg+T)
2023/09/25(月) 20:45:48.37ID:sPLXdhtl0 自己満オナニー主義者としてはやはりPEP8くらいマスターしておきたいよなー
自分で読んでわかるのも2・3年後に読んだらわからんくなる人もいるし
いつも同じオナニーばっかりの人はどっちよりに曲がっていても気付かないものだしな
自分で読んでわかるのも2・3年後に読んだらわからんくなる人もいるし
いつも同じオナニーばっかりの人はどっちよりに曲がっていても気付かないものだしな
149デフォルトの名無しさん (ワッチョイ 1efb-xg+T)
2023/09/25(月) 20:47:01.71ID:sPLXdhtl0 Pythonを研究で使う人って設計書書かないっしょ
あとから必要になったときにリファクタリングするついでに設計書書く感じじゃね
あとから必要になったときにリファクタリングするついでに設計書書く感じじゃね
150デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/25(月) 20:48:13.53ID:9KhxBWdoM なんだか見てると頭が痛くなるな
py界はちょっと参加者が違う
py界はちょっと参加者が違う
151デフォルトの名無しさん (スプッッ Sd4a-+j9z)
2023/09/25(月) 20:49:47.51ID:BYuYgOypd >>138
その言語の進化の歴史に型ヒント、型チェックは含まれるの?
その言語の進化の歴史に型ヒント、型チェックは含まれるの?
152デフォルトの名無しさん (ワッチョイ 0690-44ew)
2023/09/25(月) 20:50:39.88ID:i7V/7hMm0 なんで研究前提になっているかは知らんが、
システム・ライフ・サイクルがある程度の期間であれば設計書は作成するでしょ。
記憶できない規模なら、なおさら。
システム・ライフ・サイクルがある程度の期間であれば設計書は作成するでしょ。
記憶できない規模なら、なおさら。
153デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/25(月) 20:58:58.46ID:9KhxBWdoM 趣味のプログラムならそんなものは作ってないだろう
最初はモジュール含めてトータル3000行だったものが1万行オーバーとか普通だし
最初はモジュール含めてトータル3000行だったものが1万行オーバーとか普通だし
154デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/25(月) 21:07:13.67ID:9KhxBWdoM #データ読み込み
#加工
#ライブラリに渡す
#結果をプロット
しかやってない人は型はいらないというだろうけどこれでも型はいると思う
#加工
#ライブラリに渡す
#結果をプロット
しかやってない人は型はいらないというだろうけどこれでも型はいると思う
155デフォルトの名無しさん (ワッチョイ 1e34-oA3n)
2023/09/25(月) 21:35:08.48ID:zzoLmi2T0 本当に必要なのはデータを取り違えない適切なアノテーション
型自体は最適化の領分
型自体は最適化の領分
156デフォルトの名無しさん (オイコラミネオ MM0b-WMZf)
2023/09/25(月) 21:44:51.84ID:9KhxBWdoM 実現したいことが30行程度の人はある意味幸せなのかも
157デフォルトの名無しさん (ワッチョイ 8701-DeI3)
2023/09/25(月) 22:11:48.17ID:SlvnoeIB0158デフォルトの名無しさん (ワッチョイ ff9e-IWg1)
2023/09/25(月) 22:42:07.31ID:p/yzOgz90159デフォルトの名無しさん (ワッチョイ 0602-oehB)
2023/09/25(月) 22:51:51.12ID:sd9Bn/Fb0 「見れば分かる」にもいろいろ解釈の余地があるからな
何を見たのか、断片なのか全体なのか
何が分かったのか、その断片の処理なのか全体の機能なのか
何を見たのか、断片なのか全体なのか
何が分かったのか、その断片の処理なのか全体の機能なのか
160デフォルトの名無しさん (ワッチョイ 6f54-CSnM)
2023/09/25(月) 22:56:08.31ID:rxWsx5B/0 規模が拡大すると、全体で何をしているのかが把握できない
という事実を振り回しているだけに見える
そんなのは当たり前の話で、だから細かく細分化したり抽象化できるようになってる
その細分化された最小パーツの段階で型ヒントが必須かどうかは、
全体の規模とは無関係な話
という事実を振り回しているだけに見える
そんなのは当たり前の話で、だから細かく細分化したり抽象化できるようになってる
その細分化された最小パーツの段階で型ヒントが必須かどうかは、
全体の規模とは無関係な話
161デフォルトの名無しさん (ワッチョイ 1ecf-WMZf)
2023/09/25(月) 23:00:29.29ID:v3kx0nZB0162デフォルトの名無しさん (スップ Sdaa-bMOT)
2023/09/25(月) 23:20:29.62ID:ExPntN/Hd メリット・デメリットがあるなら
使い分ければいいじゃん
使い分ければいいじゃん
163デフォルトの名無しさん (ワッチョイ bbb1-4mfa)
2023/09/25(月) 23:30:04.95ID:EXdIEqjr0 2万行ぐらいのプログラムは、大きい? 小さい?
164デフォルトの名無しさん (スプッッ Sd4a-+j9z)
2023/09/25(月) 23:43:41.98ID:BYuYgOypd >>160
ある関数が取るパラメータの型は何か、返す値の型はなにか
その関数自体だけからでは読み取れない場合は中の処理を順に追っていく必要に迫られる
そして規模が大きくなるにつれてその探索範囲も広く深くなっていく
型ヒントの有用性は最小パーツ(数行程度の関数)であってもプロジェクトの規模に応じると考える方が自然では?
ある関数が取るパラメータの型は何か、返す値の型はなにか
その関数自体だけからでは読み取れない場合は中の処理を順に追っていく必要に迫られる
そして規模が大きくなるにつれてその探索範囲も広く深くなっていく
型ヒントの有用性は最小パーツ(数行程度の関数)であってもプロジェクトの規模に応じると考える方が自然では?
165デフォルトの名無しさん (ワッチョイ abc0-jswk)
2023/09/26(火) 00:04:04.98ID:qxNS/0+Y0 一見動いてるけど間違ってるのを認知する助けになるから型チェックは有難い
特に凡人ほど恩恵を受けやすい
特に凡人ほど恩恵を受けやすい
166デフォルトの名無しさん (ワッチョイ 1ecf-44ew)
2023/09/26(火) 00:46:46.76ID:cCYCck9J0 VSCodeとか開発環境使ってれば圧倒的にタイプ数が違う
167デフォルトの名無しさん (テテンテンテン MMc6-1ddl)
2023/09/26(火) 06:46:24.36ID:fBLAaznsM 絶対に譲歩の無い議論をいつまでやるつもりなんだ
無能で暇だと言うことしか解らないぞ
無能で暇だと言うことしか解らないぞ
168デフォルトの名無しさん (ワッチョイ a79d-iHBT)
2023/09/26(火) 08:36:34.19ID:m7WWnQHX0 見ればわかるコードが一番ってその通りでそれを実現するのがアノテーションなのでは?
型チェッカー入れてなくてもstrとかintとか書いてあるだけで多少便利でしょ
型チェッカー入れてなくてもstrとかintとか書いてあるだけで多少便利でしょ
169デフォルトの名無しさん (ワッチョイ ffbf-4KCz)
2023/09/26(火) 10:30:03.44ID:FeH8Ispq0 >>165
テスト書いてないの?
テスト書いてないの?
170デフォルトの名無しさん (ワッチョイ a79d-iHBT)
2023/09/26(火) 12:24:57.32ID:m7WWnQHX0171デフォルトの名無しさん (ワッチョイ a79d-iHBT)
2023/09/26(火) 12:28:49.95ID:m7WWnQHX0 俺はそこまでしてないけど、実行時に入った変数の型見て自動でアノテーション生成してくれるツールとかもあったはず
研究、実験とか数学に使いたい人が、思考が阻害されるからつけないっていうのはわかるよ
そうじゃないのに型アノテーションに反抗してる人は、正しい道具を使ってないから文句が出るだけだと思うわ
それか用途が限定されてる小規模コードしか書いてない
研究、実験とか数学に使いたい人が、思考が阻害されるからつけないっていうのはわかるよ
そうじゃないのに型アノテーションに反抗してる人は、正しい道具を使ってないから文句が出るだけだと思うわ
それか用途が限定されてる小規模コードしか書いてない
172デフォルトの名無しさん (ワッチョイ ab1b-zG+p)
2023/09/26(火) 16:30:57.25ID:lxwVAsqB0 そもそも型で躓く人はプログラミングに向いてないと思うんだよね
173デフォルトの名無しさん (ワッチョイ 0a7f-hriW)
2023/09/26(火) 20:52:38.66ID:WQhrHw+N0 Pydanticっていうライブラリがあってだなぁ
174デフォルトの名無しさん (ワッチョイ 0a7f-hriW)
2023/09/26(火) 20:53:40.62ID:WQhrHw+N0175デフォルトの名無しさん (ワッチョイ 4623-rDwG)
2023/09/26(火) 21:32:08.30ID:t9DgueCM0 TS触ってJSなんかにもう戻りたくないと思うかどうか
176デフォルトの名無しさん (ワッチョイ 86aa-4KCz)
2023/09/27(水) 00:31:04.87ID:G2/rCfPl0 >>170
「テスト書かずに型ヒント書く」笑えない
「テスト書かずに型ヒント書く」笑えない
177デフォルトの名無しさん (ワッチョイ 8e3a-IWg1)
2023/09/27(水) 00:55:33.55ID:tcNPn/P00 >>170のどこをどう読んだら「テスト書かずに型ヒント書く」になるのか
178デフォルトの名無しさん (ワッチョイ 0690-44ew)
2023/09/27(水) 06:30:10.21ID:ddIA8xfv0 修飾語(英語でいう目的語)がない文章に反応するから、こいういう事になる。
文章として不十分なレスはスルーが基本。
文章として不十分なレスはスルーが基本。
179デフォルトの名無しさん (アウアウウー Sacf-PB4I)
2023/09/27(水) 11:16:50.05ID:OOPn+kCla >>165
WindowsのAPIはboolを還す定義されていても3値戻って来たりするからな
WindowsのAPIはboolを還す定義されていても3値戻って来たりするからな
180デフォルトの名無しさん (ワッチョイ eb7d-4BVt)
2023/09/30(土) 00:30:05.29ID:KBI1seNT0181デフォルトの名無しさん (ワッチョイ 25e1-cApS)
2023/09/30(土) 00:39:07.13ID:Q20RaGpG0 >>180
金盗まれる詐欺な
金盗まれる詐欺な
182デフォルトの名無しさん (ワッチョイ 2552-zT9n)
2023/09/30(土) 01:56:52.88ID:xT2aB7fT0 >>180
これは知らなかった
これは知らなかった
183デフォルトの名無しさん (ワッチョイ cb46-Q3QL)
2023/09/30(土) 07:00:11.33ID:5PlfPHl00 >>180
グロ
グロ
184デフォルトの名無しさん (テテンテンテン MMcb-q/Ng)
2023/09/30(土) 10:20:59.78ID:1bpEmQaSM 型ヒントの導入には正直かなりショックを受けた
シンプルを旨とするPython運営がこれほどの愚行を犯すとは
コードのタイプ量は3割増しになってPythonの良さは大幅に失われるだろう
そうなる前に古いバージョンのインストールファイルをこまめに保管しておくしかない
シンプルを旨とするPython運営がこれほどの愚行を犯すとは
コードのタイプ量は3割増しになってPythonの良さは大幅に失われるだろう
そうなる前に古いバージョンのインストールファイルをこまめに保管しておくしかない
185デフォルトの名無しさん (ワッチョイ cbcf-VEJP)
2023/09/30(土) 10:45:18.53ID:B+iPWXEz0 使いたくなきゃ使わんでもいいってのが型ヒントのいいとこやぞ
186デフォルトの名無しさん (ワッチョイ cbfb-pXm+)
2023/09/30(土) 11:07:31.76ID:+PzIRgSu0 働きたくない
187インボイス導入 (アウアウウー Sa89-5C2y)
2023/09/30(土) 11:41:27.50ID:+WV6fTrGa 働いたら負け
188デフォルトの名無しさん (ワッチョイ 7590-uznD)
2023/09/30(土) 12:01:20.00ID:5U2odjyx0 使うときも全部に型ヒント付ける必要もないしな
関数の引数に付けるだけでも効果十分
関数の引数に付けるだけでも効果十分
189デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/09/30(土) 12:36:44.89ID:+WV6fTrGa 結局チェックされないなら間違ってても通ってしまう訳で
間違ってると内容と矛盾してどっちが本当か判らなくなって
信用出来なくなって毎回内容確認するハメになって
結局効率悪くなる害悪でしかない
間違ってると内容と矛盾してどっちが本当か判らなくなって
信用出来なくなって毎回内容確認するハメになって
結局効率悪くなる害悪でしかない
190デフォルトの名無しさん (スッップ Sd43-zllv)
2023/09/30(土) 12:41:17.31ID:kPlTAx4gd チェックされない型ヒントもどきはない方がいい
書いたならちゃんと有効活用しろ
書いたならちゃんと有効活用しろ
191デフォルトの名無しさん (ワッチョイ cbcf-VEJP)
2023/09/30(土) 13:01:40.58ID:B+iPWXEz0 >間違ってると内容と矛盾してどっちが本当か判らなくなって
どういう状況を想定してるんだろうか。
どういう状況を想定してるんだろうか。
192デフォルトの名無しさん (ワッチョイ 051b-voBv)
2023/09/30(土) 14:46:33.30ID:1cX5xto90 Pythonの文法を頑なに守りつつオブジェクト指向プログラミングを続けようという涙ぐましい努力
193デフォルトの名無しさん (ワッチョイ 5501-ehUN)
2023/09/30(土) 15:22:12.31ID:yB2FVVQo0 >>180
とっくに全員やってね?
とっくに全員やってね?
194デフォルトの名無しさん (ワッチョイ cb46-Q3QL)
2023/09/30(土) 15:55:47.06ID:BfD477rw0 >>189
関数入出力情報のドキュメントが信用できないってのは、適宜メンテしてね! 以外にどうしようも無いんじゃね。
関数入出力情報のドキュメントが信用できないってのは、適宜メンテしてね! 以外にどうしようも無いんじゃね。
195デフォルトの名無しさん (ワッチョイ 051b-voBv)
2023/09/30(土) 17:28:50.98ID:1cX5xto90 まあどうせ観念していずれ型宣言も文法に組み込むんだろうけどさ
196デフォルトの名無しさん (ワッチョイ 7d86-uznD)
2023/09/30(土) 19:14:27.46ID:hQVVFgf/0 >>189
具体的なサンプルコードで状況説明してくれる?
具体的なサンプルコードで状況説明してくれる?
197デフォルトの名無しさん (ワッチョイ 2585-2pcI)
2023/09/30(土) 22:47:55.23ID:JXMtOmCl0 仕事でExcelファイルを処理することになった
Pythonだけでどうにしようとしたけど、限界がきてVBA触ってる
色々つらいけど、特に開発環境がつらい
Pythonだけでどうにしようとしたけど、限界がきてVBA触ってる
色々つらいけど、特に開発環境がつらい
198デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/09/30(土) 23:01:40.77ID:XalifVE+0 図形とかグラフとかは辛いな
excelがメインの処理の場所ならpythonでやれることは限界がある
入力データを用意するとか、設定を書いて実行ボタン押すとか、
最終結果を出力するとか、UI部分だけ使うには向いてる
excelがメインの処理の場所ならpythonでやれることは限界がある
入力データを用意するとか、設定を書いて実行ボタン押すとか、
最終結果を出力するとか、UI部分だけ使うには向いてる
199デフォルトの名無しさん (テテンテンテン MMcb-q/Ng)
2023/09/30(土) 23:05:22.23ID:bqOz9PdWM またこの手の泣き言野郎か
今の開発者ってのは環境をお膳立てしてもらわないと何もできんのか?
設計さえちゃんとできていればテキストエディタとコマンドプロンプトで十分
今の開発者ってのは環境をお膳立てしてもらわないと何もできんのか?
設計さえちゃんとできていればテキストエディタとコマンドプロンプトで十分
200デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/09/30(土) 23:09:50.32ID:XalifVE+0 C言語の頃は全てを記憶で書いただろうけど、
どうせ覚えられないしエディタがヒント出せばええやん、という方針で言語がデザインされるので、
装備ゼロで戦うのは大変よ
どうせ覚えられないしエディタがヒント出せばええやん、という方針で言語がデザインされるので、
装備ゼロで戦うのは大変よ
201デフォルトの名無しさん (ワッチョイ 2585-2pcI)
2023/09/30(土) 23:11:24.29ID:JXMtOmCl0 入力データがexcelファイルなんよな
202デフォルトの名無しさん (テテンテンテン MMcb-q/Ng)
2023/09/30(土) 23:27:08.82ID:bqOz9PdWM203デフォルトの名無しさん (ワッチョイ 2585-2pcI)
2023/09/30(土) 23:39:17.77ID:JXMtOmCl0 >>202
VBAで書き始めてからそれは思いました
VBAで書き始めてからそれは思いました
204デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/09/30(土) 23:42:41.06ID:XalifVE+0 何をしてるのかは知らんけど
入力データだけ吸い取ったらもうexcelは閉じて、pythonで処理して、
結果だけexcelファイルに書き出すのが楽
入力データだけ吸い取ったらもうexcelは閉じて、pythonで処理して、
結果だけexcelファイルに書き出すのが楽
205デフォルトの名無しさん (ワッチョイ 2d13-2aFX)
2023/09/30(土) 23:42:39.73ID:yu70ioeQ0 CSVから読み込んで計算して上書きしてるよ
206デフォルトの名無しさん (ワッチョイ 2585-2pcI)
2023/09/30(土) 23:55:19.79ID:JXMtOmCl0 そういう事もしたりしてたけど、インプットがexcelファイルのみでファイルによってはデータにプロテクトかかってたりしてたから
結局VBAで処理するのが楽なんだろうなって感じでした
結局VBAで処理するのが楽なんだろうなって感じでした
207デフォルトの名無しさん (ワッチョイ cbfb-pXm+)
2023/10/01(日) 00:53:30.98ID:P28FwVlb0 マクロもパスワードロックして自分以外編集できないようにするのって大切よな
Pythonだと丸見えで編集されて動かなくなる件
Pythonだと丸見えで編集されて動かなくなる件
208デフォルトの名無しさん (ワッチョイ 1bbd-o1LZ)
2023/10/01(日) 02:02:26.24ID:+M66ZcTD0 半年もすればPython in Excelで書くのが当たり前になってそう
209デフォルトの名無しさん (ワッチョイ 2546-Q3QL)
2023/10/01(日) 09:45:50.70ID:sO86DvxC0 >>208
VBAは出来ないことが大杉だからね、クラス継承とか。
VBAは出来ないことが大杉だからね、クラス継承とか。
210デフォルトの名無しさん (ワッチョイ 2dc1-NV1v)
2023/10/01(日) 12:17:25.51ID:bcUAnMXT0 Python in Excelあっても全部任せられるわけじゃないんしょ
211デフォルトの名無しさん (ワッチョイ 2d2e-2aFX)
2023/10/01(日) 12:23:49.16ID:vEz6IuND0 あんま組み込んでもファイルをヒトにわたせんからな
212デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/10/01(日) 12:24:20.33ID:n0Tp64cO0 セルに関数書く代わりにpythonで書くみたいな感じでしょ
マクロを置き換えるものではなかったような
マクロを置き換えるものではなかったような
213デフォルトの名無しさん (ワッチョイ 051b-voBv)
2023/10/01(日) 12:58:36.47ID:SOIhx71S0 いつの間にかVisual Pythonになって更にVisual Python.NETになる
214デフォルトの名無しさん (ワッチョイ e317-cP1N)
2023/10/01(日) 13:33:03.77ID:o43+uB+s0 VBAは有償の開発ツールでも使わないとテストランナーもなければバージョンコントロールもめちゃくちゃやりにくい
Visual Studio使ってるならExcel-DNAやVSTO使ってなるべくVBAの量を減らしたほうが開発効率的に保守性的にも断然いいよ
ExcelをGUIをインタラクティブに使う必要がなくて入力データとして使うだけならPythonでも充分
Visual Studio使ってるならExcel-DNAやVSTO使ってなるべくVBAの量を減らしたほうが開発効率的に保守性的にも断然いいよ
ExcelをGUIをインタラクティブに使う必要がなくて入力データとして使うだけならPythonでも充分
215デフォルトの名無しさん (アウアウウー Sa89-pXm+)
2023/10/01(日) 14:01:56.09ID:72iWkL15a パネルビューの信頼性と選択問題についてちょっと考えてみた
多分おおよそこんな感じだとおもう
若いほうがいいか、BBAがいいかはプロパティで編集する必要がある
https://i.imgur.com/lmD54ET.png
多分おおよそこんな感じだとおもう
若いほうがいいか、BBAがいいかはプロパティで編集する必要がある
https://i.imgur.com/lmD54ET.png
216デフォルトの名無しさん (アウアウウー Sa89-pXm+)
2023/10/01(日) 14:02:04.25ID:72iWkL15a パネルビューの信頼性と選択問題についてちょっと考えてみた
多分おおよそこんな感じだとおもう
若いほうがいいか、BBAがいいかはプロパティで編集する必要がある
https://i.imgur.com/lmD54ET.png
多分おおよそこんな感じだとおもう
若いほうがいいか、BBAがいいかはプロパティで編集する必要がある
https://i.imgur.com/lmD54ET.png
217デフォルトの名無しさん (アウアウウー Sa89-pXm+)
2023/10/01(日) 14:02:28.46ID:72iWkL15a パネルビューの信頼性と選択問題についてちょっと考えてみた
多分おおよそこんな感じだとおもう
若いほうがいいか、BBAがいいかはプロパティで編集する必要がある
https://i.imgur.com/lmD54ET.png
多分おおよそこんな感じだとおもう
若いほうがいいか、BBAがいいかはプロパティで編集する必要がある
https://i.imgur.com/lmD54ET.png
218デフォルトの名無しさん (ワッチョイ 4b9e-AYcZ)
2023/10/01(日) 14:50:51.48ID:SyN7rZqG0 >>213
IronPythonはどうなる?
IronPythonはどうなる?
219デフォルトの名無しさん (ワッチョイ 7505-jiCb)
2023/10/01(日) 18:59:05.62ID:PNwI3bEh0 IronPythonといえばJythonどうなったんだっけ?
220デフォルトの名無しさん (ワッチョイ 9b02-baYP)
2023/10/02(月) 16:48:55.66ID:YC0PCAgZ0 「UTF-8でエンコードされたバイト列」の文字列を、バイト列として扱い、
そのバイト列をデコードした結果を得たい、と思ってます
たとえば「鈴木」という文字列をUTF-8にエンコードすると
print("鈴木".encode("utf-8"))
b'\xe9\x88\xb4\xe6\x9c\xa8'
こんな風になるかと思います
ここで、文字列として"\xe9\x88\xb4\xe6\x9c\xa8"を用意し、
それをバイト列として扱ってデコードした結果である「鈴木」を、
変数resultに格納するための方法を教えてください
print(b"\xe9\x88\xb4\xe6\x9c\xa8".decode("utf-8"))
と、頭に「b」を置いて文字列を直接続ければ表示はできることは分かったのですが、
こうではなく、文字列は変数strとして与えたいです
str = "\xe9\x88\xb4\xe6\x9c\xa8"
result = bytes(str).decode("utf-8")
等とやってみましたが、うまくいきませんでした
そのバイト列をデコードした結果を得たい、と思ってます
たとえば「鈴木」という文字列をUTF-8にエンコードすると
print("鈴木".encode("utf-8"))
b'\xe9\x88\xb4\xe6\x9c\xa8'
こんな風になるかと思います
ここで、文字列として"\xe9\x88\xb4\xe6\x9c\xa8"を用意し、
それをバイト列として扱ってデコードした結果である「鈴木」を、
変数resultに格納するための方法を教えてください
print(b"\xe9\x88\xb4\xe6\x9c\xa8".decode("utf-8"))
と、頭に「b」を置いて文字列を直接続ければ表示はできることは分かったのですが、
こうではなく、文字列は変数strとして与えたいです
str = "\xe9\x88\xb4\xe6\x9c\xa8"
result = bytes(str).decode("utf-8")
等とやってみましたが、うまくいきませんでした
221デフォルトの名無しさん (アウアウウー Sa89-pXm+)
2023/10/02(月) 17:15:45.40ID:KwMtPnpga222デフォルトの名無しさん (ワッチョイ 9b02-baYP)
2023/10/02(月) 17:32:06.38ID:YC0PCAgZ0 >>221
回答ありがとうございます
この場合、変数bは「b"\xe9\x88\xb4\xe6\x9c\xa8"」と表現される
バイト列になっているので、そのままデコードできるのだと認識してます
説明が難しくて申し訳ないのですが、
変数bが「"\xe9\x88\xb4\xe6\x9c\xa8"」という、頭にbのつかないテキストの
文字列となっており、その文字列を、バイト列に変換するか何かして、
UTF-8としてデコードした結果を得たいと思ってます
回答ありがとうございます
この場合、変数bは「b"\xe9\x88\xb4\xe6\x9c\xa8"」と表現される
バイト列になっているので、そのままデコードできるのだと認識してます
説明が難しくて申し訳ないのですが、
変数bが「"\xe9\x88\xb4\xe6\x9c\xa8"」という、頭にbのつかないテキストの
文字列となっており、その文字列を、バイト列に変換するか何かして、
UTF-8としてデコードした結果を得たいと思ってます
223デフォルトの名無しさん (ワッチョイ cb7b-p502)
2023/10/02(月) 17:55:59.56ID:1Dl/aSKe0 print(str.encode('latin-1').decode("utf-8"))
224デフォルトの名無しさん (ワッチョイ 25a6-wXmr)
2023/10/02(月) 18:29:10.08ID:h+g/GQYs0225デフォルトの名無しさん (ワッチョイ 9b02-baYP)
2023/10/02(月) 18:43:27.99ID:YC0PCAgZ0226デフォルトの名無しさん (ワッチョイ 9b90-AvD6)
2023/10/02(月) 18:44:51.23ID:FS0/fzQ10 >>220
こんな感じ?
import binascii
name = '鈴木'
bin = name.encode('utf-8') # utf-8のエンコード
binstr = bin.hex() # binの文字列化
bin2 = binascii.unhexlify(binstr) # bytesに
name2 = bin2.decode('utf-8')
print(name2)
こんな感じ?
import binascii
name = '鈴木'
bin = name.encode('utf-8') # utf-8のエンコード
binstr = bin.hex() # binの文字列化
bin2 = binascii.unhexlify(binstr) # bytesに
name2 = bin2.decode('utf-8')
print(name2)
227デフォルトの名無しさん (ワッチョイ eb01-JbMN)
2023/10/02(月) 18:54:23.88ID:k2BlTluO0 自分のコード内でencode(‘utf8’)してるのなら
byteオブジェクトを持ち回るか最初からfromhex()で読める形のstrにしておく
string = “鈴木”.encode(‘utf8’).hex()
bytes.fromhex(string).decode(‘utf8’)でok
外部のファイルとかに\xで記載されてるものなら
読み込んだ時に\\xになるのでreplaceしてやればok
byteオブジェクトを持ち回るか最初からfromhex()で読める形のstrにしておく
string = “鈴木”.encode(‘utf8’).hex()
bytes.fromhex(string).decode(‘utf8’)でok
外部のファイルとかに\xで記載されてるものなら
読み込んだ時に\\xになるのでreplaceしてやればok
228デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/10/03(火) 11:47:59.45ID:QaeBAOHSa229デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/10/03(火) 12:18:33.94ID:XmURfba80 input.txt
\xe9\x88\xb4\xe6\x9c\xa8
f = open('input.txt')
str = f.read()
こういう話だと思って見てたけど
\xe9\x88\xb4\xe6\x9c\xa8
f = open('input.txt')
str = f.read()
こういう話だと思って見てたけど
230デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/10/03(火) 13:19:39.91ID:QaeBAOHSa >>229
>>> str = r'\xe9\x88\xb4\xe6\x9c\xa8'
>>> bytes(ord(c) for c in bytes(ord(c) for c in str).decode('unicode-escape')).decode('utf-8')
'鈴木'
>>> str = r'\xe9\x88\xb4\xe6\x9c\xa8'
>>> bytes(ord(c) for c in bytes(ord(c) for c in str).decode('unicode-escape')).decode('utf-8')
'鈴木'
231デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/10/03(火) 13:25:10.14ID:QaeBAOHSa >>223 使うならこれでもok
>>> str = r'\xe9\x88\xb4\xe6\x9c\xa8'
>>> str.encode('latin-1').decode('unicode-escape').encode('latin-1').decode('utf-8')
'鈴木'
>>> str = r'\xe9\x88\xb4\xe6\x9c\xa8'
>>> str.encode('latin-1').decode('unicode-escape').encode('latin-1').decode('utf-8')
'鈴木'
232デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/10/03(火) 14:02:33.32ID:XmURfba80 unicode escapeじゃないやん
ただの2桁十六進数やん
ただの2桁十六進数やん
233デフォルトの名無しさん (ワッチョイ 2dae-bCT0)
2023/10/03(火) 14:10:54.27ID:lqxRC9/W0234デフォルトの名無しさん (オイコラミネオ MMd1-kmCf)
2023/10/03(火) 14:40:19.82ID:ZtbTtZfzM235デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/10/03(火) 15:33:43.66ID:QaeBAOHSa >>232
\xe6\x84\x9fji\xe6\x82\xaai\xe3\x82\x88
\xe6\x84\x9fji\xe6\x82\xaai\xe3\x82\x88
236デフォルトの名無しさん (ワッチョイ 43c3-cP1N)
2023/10/03(火) 20:24:55.63ID:uE2hlhlx0 プログラム内にリテラルで\xhh形式の文字列を書くくらいなら最初から'鈴木'かb'\xe9\x88\xb4\xe6\x9c\xa8'で十分でしょ
わざわざ異なる文字列として解釈されうる値を書く意味がわからない
プログラムパズルとかそういう話なのかな?
わざわざ異なる文字列として解釈されうる値を書く意味がわからない
プログラムパズルとかそういう話なのかな?
237デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/10/03(火) 20:30:14.37ID:XmURfba80 > 変数bが「"\xe9\x88\xb4\xe6\x9c\xa8"」という、頭にbのつかないテキストの文字列となっており
というのは r"\xe9\x88\xb4\xe6\x9c\xa8" の意味だろうと
コードに埋め込む訳は無いので、ファイルなり通信なりで入力されるのだろうと
というのは r"\xe9\x88\xb4\xe6\x9c\xa8" の意味だろうと
コードに埋め込む訳は無いので、ファイルなり通信なりで入力されるのだろうと
238デフォルトの名無しさん (スッップ Sd43-IetE)
2023/10/03(火) 21:13:02.23ID:wlkvtDKRd239デフォルトの名無しさん (ワッチョイ 2db8-cP1N)
2023/10/03(火) 23:07:00.18ID:/3Vxa5Hd0240デフォルトの名無しさん (ワッチョイ 1b3e-o1LZ)
2023/10/03(火) 23:15:37.13ID:3QaR5cka0 いっそCodec自作するのがよい
241デフォルトの名無しさん (ワッチョイ 8501-IetE)
2023/10/04(水) 19:48:31.85ID:vlFi92ca0 matplotlibでファイルとかWebAggにグラフを書き出すとき、show()する度に過去のグラフの上に新しいグラフが追加されていくじゃないですか。
show()する度にウインドウをリフレッシュして新しいグラフだけ表示するようにしたいんですが、そのためには毎回show()のあとにclose()かclf()するしかないですかね?
matplotlibの設定か何かでshow()の後のcloseを強制化か自動化する方法があったらご教示ください。
show()する度にウインドウをリフレッシュして新しいグラフだけ表示するようにしたいんですが、そのためには毎回show()のあとにclose()かclf()するしかないですかね?
matplotlibの設定か何かでshow()の後のcloseを強制化か自動化する方法があったらご教示ください。
242デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/10/04(水) 20:10:48.56ID:PXW0isNe0 グラフはなんかどうやっても面倒で、
その原因は隅々まで人間が指定できてしまうことにあるので、
不自由だけど全部やってくれる系のが出るのを待ってる
その原因は隅々まで人間が指定できてしまうことにあるので、
不自由だけど全部やってくれる系のが出るのを待ってる
243デフォルトの名無しさん (アウアウクー MMa1-u01H)
2023/10/04(水) 23:28:39.66ID:q7y7rPWzM244デフォルトの名無しさん (ワッチョイ 25a7-Gac/)
2023/10/05(木) 01:09:23.57ID:2PZdepi20 ロジックをどのようにすれば以下のような処理を実現できるか悩んでいて、知恵を拝借したいです…
何か良い方法はないでしょうか?
【前提条件】
◯ある配列があり、先頭から順に1日に3件ずつ処理しています
◯その配列には辞書が格納されています。キーの一つに処理日付カラムがあり、最後に処理された日付が格納されています
◯配列の末尾に到達すると、処理対象は先頭に戻ります
【実現したいこと】
配列の中のある一つのインデックスを選んだ時、そのインデックスが示す辞書が次に処理される日付を求める
何か良い方法はないでしょうか?
【前提条件】
◯ある配列があり、先頭から順に1日に3件ずつ処理しています
◯その配列には辞書が格納されています。キーの一つに処理日付カラムがあり、最後に処理された日付が格納されています
◯配列の末尾に到達すると、処理対象は先頭に戻ります
【実現したいこと】
配列の中のある一つのインデックスを選んだ時、そのインデックスが示す辞書が次に処理される日付を求める
245デフォルトの名無しさん (アウアウクー MMa1-u01H)
2023/10/05(木) 01:46:17.44ID:XUo8TI11M 配列の長さが固定でないなら長さが変わる法則がわからないので計算しようがない
固定なら長さを3で割って書いてある日付に足すだけでは?
固定なら長さを3で割って書いてある日付に足すだけでは?
246デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/10/05(木) 07:27:27.90ID:Q+rj3wnZM python3.11.1からpython3.12.0に更新したら追加したモジュールがないってエラーになるんですが
更新するたびにモジュール入れなおさないといけないのですか
更新するたびにモジュール入れなおさないといけないのですか
247デフォルトの名無しさん (ワッチョイ cb7b-p502)
2023/10/05(木) 09:03:11.32ID:nAkSGUCB0248244 (ワッチョイ 25a7-skpN)
2023/10/05(木) 09:37:49.75ID:2PZdepi20 配列の長さは固定としてよいのですが、長さを3で割って日付に足すやり方は配列の長さが3の倍数でないと使えないと思うんです。
249デフォルトの名無しさん (ワッチョイ 25a7-skpN)
2023/10/05(木) 09:41:08.11ID:2PZdepi20250デフォルトの名無しさん (ワッチョイ 25a7-skpN)
2023/10/05(木) 09:41:08.94ID:2PZdepi20251デフォルトの名無しさん (ワッチョイ cb7b-p502)
2023/10/05(木) 09:52:04.06ID:nAkSGUCB0 >>250
格納するための配列が1つで、最大格納数が設定されてるって事ね?
格納する時の辞書を{‘day’:day,’contents’:[contentsA,contentsB,contentsC]}
みたいにしたらあかんの?
もしくは配列のmax数を3の倍数にしとくか。
max数が3の倍数にできなくても指定したインデックスの前後2つずつ調べれば済むだけだと思うけど。
格納するための配列が1つで、最大格納数が設定されてるって事ね?
格納する時の辞書を{‘day’:day,’contents’:[contentsA,contentsB,contentsC]}
みたいにしたらあかんの?
もしくは配列のmax数を3の倍数にしとくか。
max数が3の倍数にできなくても指定したインデックスの前後2つずつ調べれば済むだけだと思うけど。
252デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/10/05(木) 09:54:53.37ID:R2cxF7x40 3を固定にしないでいくつでもいいけど実際は3でしか使わない
という設計がいい
という設計がいい
253デフォルトの名無しさん (アウアウアー Sa2b-1W5y)
2023/10/05(木) 10:25:35.56ID:MScw1o+3a >>249
3×日数を配列の長さで割れば、ある日付けにどこを読んでいるかが計算できる
なので前回読まれた時にその日の処理の中で0番目1番目2番目のどれだったのか記録しておけば直接計算できる
あるいは配列の2つ前までが前回処理された日付を読んでもいい
Pythonの問題とかじゃなくて算数の問題じゃないか?
配列の長さがNとしたら3N日ごとに全く同じパターンが繰り返されるから、最初に3N日分計算すれば永遠に同じパターンが使える
上のやり方や3で割った余りで分類する関数を書いてもいいが最初に計算するパターンのほうがミスりづらいので俺ならこっちで書きそう
3×日数を配列の長さで割れば、ある日付けにどこを読んでいるかが計算できる
なので前回読まれた時にその日の処理の中で0番目1番目2番目のどれだったのか記録しておけば直接計算できる
あるいは配列の2つ前までが前回処理された日付を読んでもいい
Pythonの問題とかじゃなくて算数の問題じゃないか?
配列の長さがNとしたら3N日ごとに全く同じパターンが繰り返されるから、最初に3N日分計算すれば永遠に同じパターンが使える
上のやり方や3で割った余りで分類する関数を書いてもいいが最初に計算するパターンのほうがミスりづらいので俺ならこっちで書きそう
254デフォルトの名無しさん (アウアウアー Sa2b-1W5y)
2023/10/05(木) 10:25:53.00ID:MScw1o+3a >>249
3×日数を配列の長さで割れば、ある日付けにどこを読んでいるかが計算できる
なので前回読まれた時にその日の処理の中で0番目1番目2番目のどれだったのか記録しておけば直接計算できる
あるいは配列の2つ前までが前回処理された日付を読んでもいい
Pythonの問題とかじゃなくて算数の問題じゃないか?
配列の長さがNとしたら3N日ごとに全く同じパターンが繰り返されるから、最初に3N日分計算すれば永遠に同じパターンが使える
上のやり方や3で割った余りで分類する関数を書いてもいいが最初に計算するパターンのほうがミスりづらいので俺ならこっちで書きそう
3×日数を配列の長さで割れば、ある日付けにどこを読んでいるかが計算できる
なので前回読まれた時にその日の処理の中で0番目1番目2番目のどれだったのか記録しておけば直接計算できる
あるいは配列の2つ前までが前回処理された日付を読んでもいい
Pythonの問題とかじゃなくて算数の問題じゃないか?
配列の長さがNとしたら3N日ごとに全く同じパターンが繰り返されるから、最初に3N日分計算すれば永遠に同じパターンが使える
上のやり方や3で割った余りで分類する関数を書いてもいいが最初に計算するパターンのほうがミスりづらいので俺ならこっちで書きそう
255デフォルトの名無しさん (アウアウアー Sa2b-1W5y)
2023/10/05(木) 10:35:41.65ID:MScw1o+3a それプログラミングじゃなくて算数の問題だからプログラミングのお題スレとかに書くと喜ばれるよ
dictのまま書くなら2つ前までの要素がいつ処理されたのかを読んで余りで処理するしかないけどめんどいから常人はやらない
辞書を継承した自作クラスにして前回どこを読んだかのカウンターを付ける
これで次回読まれるのがいつかが計算できる
dictのまま書くなら2つ前までの要素がいつ処理されたのかを読んで余りで処理するしかないけどめんどいから常人はやらない
辞書を継承した自作クラスにして前回どこを読んだかのカウンターを付ける
これで次回読まれるのがいつかが計算できる
256デフォルトの名無しさん (ワッチョイ 9b90-AvD6)
2023/10/05(木) 11:58:22.11ID:1QWCM3G80257デフォルトの名無しさん (ワッチョイ 9b90-AvD6)
2023/10/05(木) 12:04:19.81ID:1QWCM3G80 それか
for i in range(start_idx, start_idx+3):
if i>=len(list_x): i -= len(list_x)
~本処理~
for i in range(start_idx, start_idx+3):
if i>=len(list_x): i -= len(list_x)
~本処理~
258デフォルトの名無しさん (ワッチョイ 0d54-XGbB)
2023/10/05(木) 12:10:07.58ID:R2cxF7x40 do whileが無いので、代わりに無限ループにしておいて、
whileの条件が成立しなかったらbreakで抜けるというのが標準の書き方だけど、
やっぱり低級に見える
whileの条件が成立しなかったらbreakで抜けるというのが標準の書き方だけど、
やっぱり低級に見える
259デフォルトの名無しさん (ワッチョイ 2361-tvb5)
2023/10/05(木) 13:24:00.30ID:Rw+E7y8Y0 >>246
pythonはマイナーバージョン毎に共存できるようになってるのだから入れ直すというか新たにモジュール入れてやらないとだめ
pythonはマイナーバージョン毎に共存できるようになってるのだから入れ直すというか新たにモジュール入れてやらないとだめ
260デフォルトの名無しさん (ワッチョイ eb01-JbMN)
2023/10/05(木) 18:46:58.77ID:ZQpyEfNY0 >>244
学校の宿題とかパズルとかならいいんだけど
現実のシステムだと変更に弱くなるから
最後に実行された日付に不必要に依存すべきでないと思う
次はどのインデックス位置からいつ処理を実行するのかといった進捗状態を
配列とは別に保存しておいてそれをもとに計算したほうがいい
イテレータと同じイメージ
学校の宿題とかパズルとかならいいんだけど
現実のシステムだと変更に弱くなるから
最後に実行された日付に不必要に依存すべきでないと思う
次はどのインデックス位置からいつ処理を実行するのかといった進捗状態を
配列とは別に保存しておいてそれをもとに計算したほうがいい
イテレータと同じイメージ
261デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/10/05(木) 20:25:01.10ID:86J8E1XoM262デフォルトの名無しさん (オイコラミネオ MMd1-VEJP)
2023/10/05(木) 20:28:43.13ID:86J8E1XoM pip freezeでパッケージの一覧を作成できるのか
色々導入していたわ
色々導入していたわ
263デフォルトの名無しさん (アウアウウー Sa89-5C2y)
2023/10/06(金) 10:15:56.07ID:Zl0hPCVya なんで特定のバージョンに依存する描き方をしたがるんだろ
264デフォルトの名無しさん (ワッチョイ e3ff-uznD)
2023/10/06(金) 16:14:40.86ID:IoTyA8+w0 >>263
これどういうこと?
これどういうこと?
265デフォルトの名無しさん (ワッチョイ 25b1-iVkM)
2023/10/06(金) 19:45:56.36ID:1GaBjHDa0 dockerとかrequirements.txtとか再現性高めようとすると
必然的に特定のバージョンに依存するような書き方になると思うのだが。
最新バージョンで過去のバージョンの描き方してる、とかいう元も子もない前提条件なら知らんけど
必然的に特定のバージョンに依存するような書き方になると思うのだが。
最新バージョンで過去のバージョンの描き方してる、とかいう元も子もない前提条件なら知らんけど
266デフォルトの名無しさん (ワッチョイ 8501-IetE)
2023/10/06(金) 22:02:44.19ID:fyVU6Crm0 >>243
そのポリシーに賛同するかどうかはともかく、質問への回答にはなっていない
そのポリシーに賛同するかどうかはともかく、質問への回答にはなっていない
267デフォルトの名無しさん (ワッチョイ 8501-IetE)
2023/10/06(金) 22:02:55.99ID:fyVU6Crm0 >>243
そのポリシーに賛同するかどうかはともかく、質問への回答にはなっていない
そのポリシーに賛同するかどうかはともかく、質問への回答にはなっていない
268デフォルトの名無しさん (クスマテ MM7e-RHqV)
2023/10/07(土) 00:23:30.85ID:BGf9xocdM func( *l if a else l )
条件分岐で
*l と l
渡せると思ってたら
func( *(l if a else l) )
だった
親lがリストのときは*lで
親lがリスト以外のときは[l]
ってやりたいときこれでいいのかな
def func(*args):
print( list(*args) )
l=[{"a":1},{"b":2},{"c":3}]#[["a",1],["b",2]]
#l={"d":4}
func(*(l if isinstance(l,list) else [l]) )
#[{'a': 1}, {'b': 2}, {'c': 3}]
#[{'d': 4}]
条件分岐で
*l と l
渡せると思ってたら
func( *(l if a else l) )
だった
親lがリストのときは*lで
親lがリスト以外のときは[l]
ってやりたいときこれでいいのかな
def func(*args):
print( list(*args) )
l=[{"a":1},{"b":2},{"c":3}]#[["a",1],["b",2]]
#l={"d":4}
func(*(l if isinstance(l,list) else [l]) )
#[{'a': 1}, {'b': 2}, {'c': 3}]
#[{'d': 4}]
269デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/07(土) 00:26:09.11ID:sH3Ijf0D0 typeを使うのでは
270デフォルトの名無しさん (ワッチョイ 6e41-GmSQ)
2023/10/07(土) 02:03:39.77ID:RYTHxcGi0 では、とは?
271デフォルトの名無しさん (アウアウウー Sa39-OOOs)
2023/10/08(日) 10:38:55.23ID:CrdCteTPa あるいは func(*l) if isinstance(l, list) else func(l)
あるいは func(*l) if type(l) is list else func(l)
あるいは func(*l) if type(l) is list else func(l)
272デフォルトの名無しさん (ワッチョイ 5a7a-b2+y)
2023/10/08(日) 13:04:34.27ID:DaqKIDwO0 func if func的に2度func書くメリットがいまいちわからん
273デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/08(日) 13:16:17.82ID:+xSVm5Mx0 三項演算子だからでは
274デフォルトの名無しさん (ワッチョイ 7646-ToyC)
2023/10/08(日) 13:40:38.67ID:RkxvDOHc0 Pythonの三項演算子カコワルイ
C言語とかの方がパッと見て解りやすい。
(isinstance(l, list)) ? func(*l) : func(l) ;
C言語とかの方がパッと見て解りやすい。
(isinstance(l, list)) ? func(*l) : func(l) ;
275デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/08(日) 13:52:37.91ID:+xSVm5Mx0 コロンにそうでなければ、という意味を持たせる文化圏は無い
276デフォルトの名無しさん (ワッチョイ da34-nQLp)
2023/10/08(日) 14:06:28.33ID:KpUyeA1F0 funcに返り値があったとして
f = func if func
f["res"]
# or
res = ( func if func )["res"]
またfunc内に引数分岐処理を隠蔽できる可能性を残したとして
func if func的に2度func書くメリットがいまいちわからん
f = func if func
f["res"]
# or
res = ( func if func )["res"]
またfunc内に引数分岐処理を隠蔽できる可能性を残したとして
func if func的に2度func書くメリットがいまいちわからん
277デフォルトの名無しさん (アウアウウー Sa39-OOOs)
2023/10/08(日) 14:47:59.95ID:CrdCteTPa278デフォルトの名無しさん (アウアウウー Sa39-OOOs)
2023/10/08(日) 14:54:32.17ID:CrdCteTPa >>276 みたいなのがいるから
true のときの func と false のときの func が常に同じことが確実な場合
tri(isinstance(l, list), func, (*l), (l))
でも良いが
true のときの func と false のときの func が常に同じことが確実な場合
tri(isinstance(l, list), func, (*l), (l))
でも良いが
279デフォルトの名無しさん (ワッチョイ aeda-XtdT)
2023/10/08(日) 15:02:00.39ID:kixUsqHh0 値を返せるifを追加してくれる方がうれしいわ
実装は関数のシンタックスシュガー
実装は関数のシンタックスシュガー
280デフォルトの名無しさん (ワッチョイ d50a-wTou)
2023/10/08(日) 16:02:51.80ID:J25crwC10 値を返せるifって例えばなんですか
281デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/08(日) 16:17:18.80ID:+xSVm5Mx0 むしろ値を返す方が主流だろうに
282デフォルトの名無しさん (ワッチョイ cd01-AeST)
2023/10/08(日) 16:57:27.95ID:Er3q4bv00 同じ関数を呼ぶのにアンパックするかしないかの条件分岐をさせるのは
あまり筋がよくないように感じるんだけど俺だけかな?
あまり筋がよくないように感じるんだけど俺だけかな?
283デフォルトの名無しさん (ワッチョイ 7646-ToyC)
2023/10/08(日) 17:44:40.59ID:RkxvDOHc0284デフォルトの名無しさん (ワッチョイ 76cf-GYY9)
2023/10/08(日) 18:05:22.35ID:wK2D7Ptr0 >>279
で、できたのが今の python の三項演算子
で、できたのが今の python の三項演算子
285デフォルトの名無しさん (ワッチョイ 0d01-wavJ)
2023/10/08(日) 18:54:48.99ID:e0NfdHuO0286デフォルトの名無しさん (ワッチョイ 46f1-WjDx)
2023/10/09(月) 00:17:46.66ID:XNvR9diB0 式か文かのお話
287デフォルトの名無しさん (ワッチョイ cd59-/0Ns)
2023/10/09(月) 13:00:29.46ID:T44TvStm0 printって
print(txt1,txt2,txt3)
って感じの仕様だけど
この仕様のメリットってなんなの?
t=[txt1,txt2,txt3]
print(*t)
みたいに書けて名前引数でもオプション設定できたりするくらい?
↑だとprintのソースコードは、def print(*values,,,option):な感じだけど
もしprintが
def print(values=[],option=,,,,**kwrgs):(valuesがlistか否かの処理)
みたいな仕様だったら実装上は
print([txt1,txt2,txt3],option)とかprint(txt1)
って書くことになる
個人的になんか見た目がダサいというか・・
単に好みの問題?
print(txt1,txt2,txt3)
って感じの仕様だけど
この仕様のメリットってなんなの?
t=[txt1,txt2,txt3]
print(*t)
みたいに書けて名前引数でもオプション設定できたりするくらい?
↑だとprintのソースコードは、def print(*values,,,option):な感じだけど
もしprintが
def print(values=[],option=,,,,**kwrgs):(valuesがlistか否かの処理)
みたいな仕様だったら実装上は
print([txt1,txt2,txt3],option)とかprint(txt1)
って書くことになる
個人的になんか見た目がダサいというか・・
単に好みの問題?
288デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/09(月) 13:50:57.64ID:3+LduzXw0 まあ、基本は一つだけprintだしな
スペースで区切っていくつも表示したいというデバッグ的な使い方で複数書くくらいでは
スペースで区切っていくつも表示したいというデバッグ的な使い方で複数書くくらいでは
289デフォルトの名無しさん (ワッチョイ 76cf-GYY9)
2023/10/09(月) 14:20:36.51ID:Xgju9ZEc0 print "result=", value
みたいにやってた流れだろ
みたいにやってた流れだろ
290デフォルトの名無しさん (アウアウウー Sa39-OOOs)
2023/10/09(月) 15:08:30.25ID:gMk1hFfQa >>287
昔のPythonは()すら無かった
昔のPythonは()すら無かった
291デフォルトの名無しさん (アウアウウー Sa39-OOOs)
2023/10/09(月) 15:08:44.75ID:gMk1hFfQa >>287
昔のPythonのprintは()すら無かった
昔のPythonのprintは()すら無かった
292デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/09(月) 17:42:01.48ID:DsI96EBHa >>287
実際pprintの方は引数1個しか取れなかったりする
深い意味ないんじゃない?
printは人間に見やすくするためにあるものなので今の仕様が悪いとは思わない
カッコ一つ多く書かされたらめんどい。今の仕様の理由もそんなんだろ
実際pprintの方は引数1個しか取れなかったりする
深い意味ないんじゃない?
printは人間に見やすくするためにあるものなので今の仕様が悪いとは思わない
カッコ一つ多く書かされたらめんどい。今の仕様の理由もそんなんだろ
293デフォルトの名無しさん (ワッチョイ 8901-AeST)
2023/10/09(月) 22:00:24.57ID:XTD+q5nh0 print(), print(a), print(a, b, c)と
print([]), print([a]), print([a, b, c])とどっちがいいかという話
関数定義の*argsは可変長の引数を扱う場合に
使いやすくしたり読みやすくしたりするためにある
pprintは用途的に位置引数1つで妥当
print([]), print([a]), print([a, b, c])とどっちがいいかという話
関数定義の*argsは可変長の引数を扱う場合に
使いやすくしたり読みやすくしたりするためにある
pprintは用途的に位置引数1つで妥当
294デフォルトの名無しさん (ワッチョイ 9501-iRlq)
2023/10/10(火) 00:57:06.49ID:DfzpOsqL0 a = b = {}
みたいにしたらaとbは同一の辞書を指すじゃん?
aとbが別々の辞書を指すように一行で初期化できますか
みたいにしたらaとbは同一の辞書を指すじゃん?
aとbが別々の辞書を指すように一行で初期化できますか
295デフォルトの名無しさん (ワッチョイ fa5c-X2d3)
2023/10/10(火) 01:14:32.36ID:28KhUAam0 a, b = {}, {}
296デフォルトの名無しさん (ワッチョイ 9501-iRlq)
2023/10/10(火) 04:09:25.99ID:DfzpOsqL0297デフォルトの名無しさん (ワッチョイ e964-wavJ)
2023/10/10(火) 04:36:44.80ID:x5TUUmSg0 >>293
オブジェクトを人間にわかる形に翻訳して見せるのがprintの目的なんだから
位置引数1個しか取れないとしてもそれはそれで合理的ではある
逆にprintが可変長引数取れるならpprintが取れても良い
実際の使用例で便利だから引数いっぱい送れるってだけだろうな
オブジェクトを人間にわかる形に翻訳して見せるのがprintの目的なんだから
位置引数1個しか取れないとしてもそれはそれで合理的ではある
逆にprintが可変長引数取れるならpprintが取れても良い
実際の使用例で便利だから引数いっぱい送れるってだけだろうな
298デフォルトの名無しさん (ワッチョイ ae7b-OOOs)
2023/10/10(火) 23:14:31.83ID:SP1p/Ht00 Twitterで自動投稿しようと思って練習してます。
文字の投稿は成功したんだけど、画像の投稿ができません。
最近(10月)取得の無料APIでは1.1での画像アップロードはできないのでしょうか?
文字の投稿は成功したんだけど、画像の投稿ができません。
最近(10月)取得の無料APIでは1.1での画像アップロードはできないのでしょうか?
299デフォルトの名無しさん (ワッチョイ ae7b-OOOs)
2023/10/10(火) 23:31:40.21ID:SP1p/Ht00 Twitterで自動投稿しようと思って練習してます。
文字の投稿は成功したんだけど、画像の投稿ができません。
最近(10月)取得の無料APIでは1.1での画像アップロードはできないのでしょうか?
文字の投稿は成功したんだけど、画像の投稿ができません。
最近(10月)取得の無料APIでは1.1での画像アップロードはできないのでしょうか?
300デフォルトの名無しさん (ワッチョイ 2601-AeST)
2023/10/10(火) 23:46:10.35ID:x1soPZHV0 >>297
>オブジェクトを人間にわかる形に翻訳して見せるのがprintの目的なんだから
人間にわかる形に翻訳するのは各オブジェクトに定義されている__str__の役割
どういう文字列表現にするかはprintを呼び出す前から各オブジェクトごとにすでに決まっていてprintは関知しない
逆にpprintの場合はどういう文字列表現にするかを基本的にpprintが決めている
同じ型のオブジェクトでも異なる文字列表現が要求されることを前提とした用途なので
便利な状況が多いかどうかで仕様が決まるのはその通り
つまりprintは可変長の位置引数が取れたほうが便利な状況が多いが
pprintは可変長の位置引数が取れても便利な状況があまりないということ
>オブジェクトを人間にわかる形に翻訳して見せるのがprintの目的なんだから
人間にわかる形に翻訳するのは各オブジェクトに定義されている__str__の役割
どういう文字列表現にするかはprintを呼び出す前から各オブジェクトごとにすでに決まっていてprintは関知しない
逆にpprintの場合はどういう文字列表現にするかを基本的にpprintが決めている
同じ型のオブジェクトでも異なる文字列表現が要求されることを前提とした用途なので
便利な状況が多いかどうかで仕様が決まるのはその通り
つまりprintは可変長の位置引数が取れたほうが便利な状況が多いが
pprintは可変長の位置引数が取れても便利な状況があまりないということ
301デフォルトの名無しさん (ワッチョイ 5ae7-ZI+Z)
2023/10/11(水) 13:09:57.77ID:4b2h4etA0 話が別の方向行ってる気がする
print、pprintであろうがなかろうが
リスト指定できるときは可変長の方がよくねって話じゃないのか
hoge([a,b,c])
ではなく
hoge(a,b,c,,,)
hoge(*args)
リスト形式とか行列扱うときは基本
それ専用のオブジェクト渡すわけだし
#objはリストを持つ
hoge(obj)
つまりかなりざっくり言うと
hoge(list)、hoge([])
はダサい、みたいな
print、pprintであろうがなかろうが
リスト指定できるときは可変長の方がよくねって話じゃないのか
hoge([a,b,c])
ではなく
hoge(a,b,c,,,)
hoge(*args)
リスト形式とか行列扱うときは基本
それ専用のオブジェクト渡すわけだし
#objはリストを持つ
hoge(obj)
つまりかなりざっくり言うと
hoge(list)、hoge([])
はダサい、みたいな
302デフォルトの名無しさん (ワッチョイ ee01-AeST)
2023/10/11(水) 18:07:12.31ID:PDwzRB+80 >>301
>リスト指定できるときは可変長の方がよくねって話じゃないのか
リストを受け渡すところを全部可変長引数にしたら
様々な弊害が出るのはもちろんだが根本的に想定してる用途が違う
可変長引数はコレクションやコンテナにまとまった一連の要素ではなく
それぞれ独立した値を受け渡すことを主たる使い方として想定している
コレクションまるごと受け渡すのが基本的に想定してる用途なら可変長引数は使わない
>リスト指定できるときは可変長の方がよくねって話じゃないのか
リストを受け渡すところを全部可変長引数にしたら
様々な弊害が出るのはもちろんだが根本的に想定してる用途が違う
可変長引数はコレクションやコンテナにまとまった一連の要素ではなく
それぞれ独立した値を受け渡すことを主たる使い方として想定している
コレクションまるごと受け渡すのが基本的に想定してる用途なら可変長引数は使わない
303デフォルトの名無しさん (ワッチョイ 5a8a-DaTE)
2023/10/11(水) 18:19:00.12ID:pWrOFW+D0 >様々な弊害が出る
例えば・・?
例えば・・?
304デフォルトの名無しさん (ワッチョイ e964-wavJ)
2023/10/11(水) 18:43:03.61ID:5UtQ/lO50305デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/11(水) 18:55:29.16ID:5Z/moFAt0 文字列にするところまでは別の人で、それをどう表示するかがpprint
306デフォルトの名無しさん (アウアウウー Sa39-k2x6)
2023/10/11(水) 20:10:05.07ID:Jxad2l7za 例えばRoomクラスとUserやUserクラス作ったときに
Userクラスのメソッドで[user1,user2,user3,]渡せたり
RoomクラスにUserインスタンスのリストを渡せる仕様にしたとき
まとめて渡せるけどむしろ野暮ったく感じるのはおれだけだろうか
可変長引数を使わない場合
user1=User(ユーザー1)
users = []
users.append(user1)
room = Room(users)
#room.add_user(users)
↑ユーザーを渡していますよ、というより(ユーザーだけが格納された)コレクションを渡していますよという意味合いが強まってしまう、気がする。もちろんリストを渡さなければいいわけだがそれだとadd_usersなど複数形のときにはリスト渡そうね、といったアノテーションが増える。なんか野暮い
可変長引数を使う場合
user1=User(ユーザー1)
room = Room()
room.add_user(user1)
#room.add_user(user2,user3,,)
#users=[user4]#users.append(user5)
#room.add_user(*users)
↑ユーザー単体を渡している感が強まる、気がする。add_userで可変長引数使いたくないときはそもそもひとつしか渡さなければいいし、複数可は可変長引数をもったadd_usersにでも任せればいい(なければ使えないだけ)。渡された値の正否に集中できるので例外処理がシンプル
リスト渡したいときは、リストの各値の扱いがバラバラのとき、[int,str,obj1,obj2,,,]みたいなときくらいしか無いような気がするんだがそれだと、そもそも設計ミスのような。もちろん近くのコンビニに部屋着で行く感覚ならどうでもいいと思うけど
Userクラスのメソッドで[user1,user2,user3,]渡せたり
RoomクラスにUserインスタンスのリストを渡せる仕様にしたとき
まとめて渡せるけどむしろ野暮ったく感じるのはおれだけだろうか
可変長引数を使わない場合
user1=User(ユーザー1)
users = []
users.append(user1)
room = Room(users)
#room.add_user(users)
↑ユーザーを渡していますよ、というより(ユーザーだけが格納された)コレクションを渡していますよという意味合いが強まってしまう、気がする。もちろんリストを渡さなければいいわけだがそれだとadd_usersなど複数形のときにはリスト渡そうね、といったアノテーションが増える。なんか野暮い
可変長引数を使う場合
user1=User(ユーザー1)
room = Room()
room.add_user(user1)
#room.add_user(user2,user3,,)
#users=[user4]#users.append(user5)
#room.add_user(*users)
↑ユーザー単体を渡している感が強まる、気がする。add_userで可変長引数使いたくないときはそもそもひとつしか渡さなければいいし、複数可は可変長引数をもったadd_usersにでも任せればいい(なければ使えないだけ)。渡された値の正否に集中できるので例外処理がシンプル
リスト渡したいときは、リストの各値の扱いがバラバラのとき、[int,str,obj1,obj2,,,]みたいなときくらいしか無いような気がするんだがそれだと、そもそも設計ミスのような。もちろん近くのコンビニに部屋着で行く感覚ならどうでもいいと思うけど
307デフォルトの名無しさん (ワッチョイ e964-wavJ)
2023/10/11(水) 21:05:21.93ID:5UtQ/lO50 そもそも可変長で追加したいと思ったことないや
1個追加するappendでforループ回したほうがバグりづらくない?
どうしても用意したいならappend, extend,で list の操作と名前を揃えるとか?
1個追加するappendでforループ回したほうがバグりづらくない?
どうしても用意したいならappend, extend,で list の操作と名前を揃えるとか?
308デフォルトの名無しさん (ワッチョイ e964-wavJ)
2023/10/11(水) 21:11:21.59ID:5UtQ/lO50 Pythonって配列の形状の指定がないことが多いから、長さ不明なスターアンパック自体やっぱ危険じゃね?と思う
それで書くのが明らかに簡潔なケースでは当然使うけど、そういうのも最終的にはリストかnumpy配列の委譲で実装しちゃうからメソッドの名付けで困ったことはないかも
委譲先のをパクる
それで書くのが明らかに簡潔なケースでは当然使うけど、そういうのも最終的にはリストかnumpy配列の委譲で実装しちゃうからメソッドの名付けで困ったことはないかも
委譲先のをパクる
309デフォルトの名無しさん (ワッチョイ 460f-1NJl)
2023/10/11(水) 21:48:59.91ID:dwLcTMya0 スターアンパックで危険って例えば・・?
310デフォルトの名無しさん (ワッチョイ 6eda-wjRd)
2023/10/11(水) 22:06:40.32ID:dWNDikg30 numpyとかはコレクション自体が本体みたいなもんだからリスト渡すのはわかる
しかしリストの各値を個別で扱いたい場合、各値を扱う目的とは別に
その値を格納したリストそのものに別の目的が生まれてしまう
その次元を下げてくれるのがスターの目的だと思う
しかしリストの各値を個別で扱いたい場合、各値を扱う目的とは別に
その値を格納したリストそのものに別の目的が生まれてしまう
その次元を下げてくれるのがスターの目的だと思う
311デフォルトの名無しさん (ワッチョイ 91ed-glRR)
2023/10/11(水) 22:14:51.53ID:lnf3XQiK0 >そもそも可変長で追加したいと思ったことない
それは普通にそれでいいんじゃね
可変長使わずにadd_users追加しましたってときに
「usersなんだから”当然”リスト渡すよねー(渡すのはリスト型だよねー)」(もっと言えばuserのみが格納されたリスト型だよねー、またはusersオブジェクトとかでもいい)
みたいなアノテーションが必然的に発生するのがモヤモヤするだけで。
それは普通にそれでいいんじゃね
可変長使わずにadd_users追加しましたってときに
「usersなんだから”当然”リスト渡すよねー(渡すのはリスト型だよねー)」(もっと言えばuserのみが格納されたリスト型だよねー、またはusersオブジェクトとかでもいい)
みたいなアノテーションが必然的に発生するのがモヤモヤするだけで。
312デフォルトの名無しさん (ワッチョイ 2601-AeST)
2023/10/11(水) 22:51:38.36ID:Z7/f/t+S0 >>306
そのケースは基本的に可変長引数を使う状況ではない
1件追加するためのAPIと複数一括で追加するためのAPIは分けるべき
複数一括で追加するメソッドの中身が1件1件追加するのと同じ処理なら
後者のAPIは用意せず利用者側がループを回すのでも十分
一括処理の最適化がされてるなら複数形にするだけでなく
複数件一括処理であることを示す命名を状況に合わせて考えればいいと思う
そのケースは基本的に可変長引数を使う状況ではない
1件追加するためのAPIと複数一括で追加するためのAPIは分けるべき
複数一括で追加するメソッドの中身が1件1件追加するのと同じ処理なら
後者のAPIは用意せず利用者側がループを回すのでも十分
一括処理の最適化がされてるなら複数形にするだけでなく
複数件一括処理であることを示す命名を状況に合わせて考えればいいと思う
313デフォルトの名無しさん (ワッチョイ 0594-cpkJ)
2023/10/11(水) 22:56:16.70ID:rx/2vzyO0 >そのケースは
どのケースのことを言ってるのかまったくわからんが
使わないなら使わなくていいって言ってるがな
どのケースのことを言ってるのかまったくわからんが
使わないなら使わなくていいって言ってるがな
314デフォルトの名無しさん (ワッチョイ 2601-AeST)
2023/10/11(水) 22:58:21.14ID:Z7/f/t+S0 >>304
各オブジェクトのreprを利用する場合もあればしない場合もある
そういうのを含めてどういう文字列表現にするかをpprintが決めてるということ
pprint自体はpythonで書かれててそんなに難しくないからソース見てみればいいよ
https://github.com/python/cpython/blob/3.12/Lib/pprint.py
各オブジェクトのreprを利用する場合もあればしない場合もある
そういうのを含めてどういう文字列表現にするかをpprintが決めてるということ
pprint自体はpythonで書かれててそんなに難しくないからソース見てみればいいよ
https://github.com/python/cpython/blob/3.12/Lib/pprint.py
315デフォルトの名無しさん (アウアウウー Sa39-OOOs)
2023/10/12(木) 10:46:44.12ID:u59ybXeVa >>301
呼ぶ側でパラメータが複数のときと1個であることが判ってるときに
fuga = [a, b, c]
hoge(*fuga)
と
hage = [p]
hoge(*hage)
の様に無理やりくっつけるのはダサくないのか?
hoge(p)
で良いだろ?
呼ぶ側でパラメータが複数のときと1個であることが判ってるときに
fuga = [a, b, c]
hoge(*fuga)
と
hage = [p]
hoge(*hage)
の様に無理やりくっつけるのはダサくないのか?
hoge(p)
で良いだろ?
316デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/12(木) 11:11:35.88ID:QP/ncIDa0 不合理なこと、手間がかかること、読みにくいことを避ける
合理的で簡潔で読みやすければ、ダサくてもそれが正解
合理的で簡潔で読みやすければ、ダサくてもそれが正解
317デフォルトの名無しさん (ワッチョイ 859e-iLfk)
2023/10/12(木) 11:47:55.21ID:ff5KX8HX0 みんなが何の話をしてるのかわからん
ある特定のケースで関数が引数に可変長引数かリストのどっちを受け取るべきかっていう話?
それとも、そもそも可変引数は引数は必要かっていう話?
今の議論に** オペレータは含まれる?
ある特定のケースで関数が引数に可変長引数かリストのどっちを受け取るべきかっていう話?
それとも、そもそも可変引数は引数は必要かっていう話?
今の議論に** オペレータは含まれる?
318デフォルトの名無しさん (ワッチョイ 859e-iLfk)
2023/10/12(木) 11:49:19.75ID:ff5KX8HX0319デフォルトの名無しさん (ワッチョイ 859e-iLfk)
2023/10/12(木) 11:49:27.64ID:ff5KX8HX0320デフォルトの名無しさん (ワッチョイ 8d2a-dsh4)
2023/10/12(木) 13:25:38.85ID:B82UzHiK0 PythonでStableDiffusionで使われるsafetensorsをonnxファイルに変換するアプリを作り、ユーザーに配布したいのですが、ユーザーにPython環境を構築させないで済む方法があれば教えてください
GUIから使用したいのでPythonでコマンドラインアプリを作成しC#で作ったGUIからC#のProsses.Start()で起動して動かしたいと思いますが
例えばPythonをインストールしていないPCでProsses.Start("〇〇.py")をやっても動きませんよね?
どうすればいいでしょうか?
GUIから使用したいのでPythonでコマンドラインアプリを作成しC#で作ったGUIからC#のProsses.Start()で起動して動かしたいと思いますが
例えばPythonをインストールしていないPCでProsses.Start("〇〇.py")をやっても動きませんよね?
どうすればいいでしょうか?
321デフォルトの名無しさん (ワッチョイ d56a-S03z)
2023/10/12(木) 13:35:59.07ID:XSGwFcLX0 >>315
>複数のときと1個であることが判ってるとき
うん、だからadd_itemで可変長使いたくないなら使わなくていいしadd_itemsで可変長使えばいいし
別に可変長使ったadd_itemでitem複数追加できる仕様にしてもいいしって言ってる
add_itemであろうがadd_itemsであろうが
リスト渡す場合に「当然リスト形式で渡すよね」というアノテーション発生が問題なのであって、と言っている
リストに限らず、リスト渡すなら渡すで、オブジェクト渡すなら渡すで、
どうしてその形式なの?の前提があるでしょ
>複数のときと1個であることが判ってるとき
うん、だからadd_itemで可変長使いたくないなら使わなくていいしadd_itemsで可変長使えばいいし
別に可変長使ったadd_itemでitem複数追加できる仕様にしてもいいしって言ってる
add_itemであろうがadd_itemsであろうが
リスト渡す場合に「当然リスト形式で渡すよね」というアノテーション発生が問題なのであって、と言っている
リストに限らず、リスト渡すなら渡すで、オブジェクト渡すなら渡すで、
どうしてその形式なの?の前提があるでしょ
322デフォルトの名無しさん (ワッチョイ 6eb9-atGC)
2023/10/12(木) 13:41:54.06ID:vYXKnMxn0 >>303,309
が知りたい
が知りたい
323デフォルトの名無しさん (ワッチョイ b17c-/Lnu)
2023/10/12(木) 14:32:29.65ID:WrmmhFIY0 あえて複数形のない日本語で考えるとわかりやすいかもな
add_うどん()
add_うどん(うどん)
うどんが何うどんだとかどこ産のうどんだとかは、add_うどんメソッドには依存しない
とにかく、うどんを渡せばよくて
そのうどんが、うどんクラスのインスタンスだったりするかもしれないってだけ
だが、リストで渡せてしてしまうと
add_うどん([うどん、うどん、うどん、、])
[]←これなに? → うどん(など)の配膳カートです
これはうどんじゃなくてカートを渡したってことになる
「カートには入れたが、複数杯(や玉)のうどんを渡したって意味な」
というのが自分も含め通じてしまうのは
Listはそうときに使う(使いたい)からっていう共通認識だけでしかない
"add_うどん_を_配膳カート_で_()"
とかだったら配膳カートをクラス化して渡せばいいし
(リストの機能で十分なら)クラス化せずともリストで渡してもいいのはわかる
でも大抵、リストを渡す時はそこらへん省略されてるかアノテーションで判断してる気がする
なぜならadd_うどん内部での配膳カートはイテラブル程度の機能しか使わないことが多いから
リストを渡す、は本当はそれ自体に意図があり
可変長引数はその意図を論理的に省略することができる
add_うどん()
add_うどん(うどん)
うどんが何うどんだとかどこ産のうどんだとかは、add_うどんメソッドには依存しない
とにかく、うどんを渡せばよくて
そのうどんが、うどんクラスのインスタンスだったりするかもしれないってだけ
だが、リストで渡せてしてしまうと
add_うどん([うどん、うどん、うどん、、])
[]←これなに? → うどん(など)の配膳カートです
これはうどんじゃなくてカートを渡したってことになる
「カートには入れたが、複数杯(や玉)のうどんを渡したって意味な」
というのが自分も含め通じてしまうのは
Listはそうときに使う(使いたい)からっていう共通認識だけでしかない
"add_うどん_を_配膳カート_で_()"
とかだったら配膳カートをクラス化して渡せばいいし
(リストの機能で十分なら)クラス化せずともリストで渡してもいいのはわかる
でも大抵、リストを渡す時はそこらへん省略されてるかアノテーションで判断してる気がする
なぜならadd_うどん内部での配膳カートはイテラブル程度の機能しか使わないことが多いから
リストを渡す、は本当はそれ自体に意図があり
可変長引数はその意図を論理的に省略することができる
324デフォルトの名無しさん (ワッチョイ 0548-3JHV)
2023/10/12(木) 15:36:59.50ID:gAp1qlED0 なんか知らんが草
325デフォルトの名無しさん (アウアウクー MM35-wavJ)
2023/10/12(木) 15:40:56.90ID:B5sD+hFhM >>309
危険というか単にバグりやすくなるってだけ
多重配列が危ない
リストのリスト、リストのリストのリストとかでアンパック使うと少なくとも俺はすぐバグる
あんまり入れ子になるなら普通は自作クラス定義するがリストとタプルで済ませたいこともあるから
自作データクラスのリストとかは多重配列に近いと思うのでアンパックをホイホイ使うとバグりやすいんじゃないかなと
危険というか単にバグりやすくなるってだけ
多重配列が危ない
リストのリスト、リストのリストのリストとかでアンパック使うと少なくとも俺はすぐバグる
あんまり入れ子になるなら普通は自作クラス定義するがリストとタプルで済ませたいこともあるから
自作データクラスのリストとかは多重配列に近いと思うのでアンパックをホイホイ使うとバグりやすいんじゃないかなと
326デフォルトの名無しさん (アウアウクー MM35-wavJ)
2023/10/12(木) 15:47:06.45ID:B5sD+hFhM アンパック使ってもforで書いてもほとんど同じだけど多重配列ならforの入れ子で書いたほうが階層の把握に間違いがないってことね
1重配列なことが確実ならスターアンパックで問題ないと思う
1重配列なことが確実ならスターアンパックで問題ないと思う
327デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/12(木) 16:07:06.78ID:QP/ncIDa0 組み込みの型を使ったらそうなるって
listにはlistという意味しか無いんだから
型に意味を持たせたいならクラスを作るしか
listにはlistという意味しか無いんだから
型に意味を持たせたいならクラスを作るしか
328デフォルトの名無しさん (ワッチョイ 85cf-d6sz)
2023/10/12(木) 16:22:18.67ID:a6KaL/fa0 >バグりやすくなる >少なくとも俺はすぐバグる
なにこれ
めっちゃふわふわしてて全然わからん
具体的にどういうとき・・?
なにこれ
めっちゃふわふわしてて全然わからん
具体的にどういうとき・・?
329デフォルトの名無しさん (ワッチョイ 69e4-NDEe)
2023/10/12(木) 16:27:05.61ID:kcOw/s7X0330328 (ワッチョイ 0d01-5AJl)
2023/10/12(木) 16:39:38.79ID:qIe0UAcP0 一応自分でも考えてみたが多次元配列をスターで再帰するときとか?
def recursive_array_print(*args):
for item in args:
if isinstance(item, list):
recursive_array_print(*item)
else:
print(item)
nested_array = [1, [2, [3, 4], 5], 6, [7, 8]]
recursive_array_print(nested_array)
例えばこれは数値だけだからまだいいけど
辞書やらだった場合に条件分岐が面倒とか・・?
でもそれバグというより設計ミスだしな
バグってなんだろ
def recursive_array_print(*args):
for item in args:
if isinstance(item, list):
recursive_array_print(*item)
else:
print(item)
nested_array = [1, [2, [3, 4], 5], 6, [7, 8]]
recursive_array_print(nested_array)
例えばこれは数値だけだからまだいいけど
辞書やらだった場合に条件分岐が面倒とか・・?
でもそれバグというより設計ミスだしな
バグってなんだろ
331デフォルトの名無しさん (ワッチョイ 05b1-h3B4)
2023/10/12(木) 18:00:33.28ID:D2IWbE4K0 個人的に第一引数設計の優先順位は
①単数
②単数・複数(可変長引数)= ③単数・複数(関数名に引数の意図を明示&リスト)
④単数・複数(単純展開が目的のリスト)
①はよく見る(というか複数しなければほぼ必須なので当たり前)
②は①で実装できる範囲なのであまり見ない(例 [ list.append(i) for ])
③をするくらいなら渡す値をクラス化していることが多い
④は①で実装できる範囲なのであまり見ない、個人用途コードでよく見る
第一引数でなくとも(行列の演算でもない限り)リストを渡すのは微妙
①単数
②単数・複数(可変長引数)= ③単数・複数(関数名に引数の意図を明示&リスト)
④単数・複数(単純展開が目的のリスト)
①はよく見る(というか複数しなければほぼ必須なので当たり前)
②は①で実装できる範囲なのであまり見ない(例 [ list.append(i) for ])
③をするくらいなら渡す値をクラス化していることが多い
④は①で実装できる範囲なのであまり見ない、個人用途コードでよく見る
第一引数でなくとも(行列の演算でもない限り)リストを渡すのは微妙
332317 (ワッチョイ e943-nnu1)
2023/10/13(金) 10:32:08.61ID:uOHCnao90 誰か教えて下さい、、
333デフォルトの名無しさん (ワッチョイ 46f4-SXiR)
2023/10/13(金) 10:36:29.66ID:b6IM7MTY0 >>331
>②単数・複数(可変長引数)
可変長引数は単数・複数を同時にサポートするためにあるんじゃないんだよ
そもそもの大前提として一つの関数や一つの変数で単数・複数を同時にサポートしようとするのは特殊なケースを除いて基本的に悪手だからね
>②単数・複数(可変長引数)
可変長引数は単数・複数を同時にサポートするためにあるんじゃないんだよ
そもそもの大前提として一つの関数や一つの変数で単数・複数を同時にサポートしようとするのは特殊なケースを除いて基本的に悪手だからね
334デフォルトの名無しさん (ワッチョイ 7610-n4m4)
2023/10/13(金) 10:40:10.61ID:AODTp1VX0 >同時にサポートするためにあるんじゃない
printさん・・
printさん・・
335デフォルトの名無しさん (ワッチョイ 7a36-580C)
2023/10/13(金) 10:44:37.94ID:YTjLrT3n0 ん・・ちょっとまてよだったら可変長引数使う時は
hoge() ←ダメ
hoge(a) ←ダメ
↑は条件分岐でそもそも実行させないようにして
少なくとも
hoge(a,b)
ここから推奨ってこと?
可変長ってそんな概念だったっけ・・?
hoge() ←ダメ
hoge(a) ←ダメ
↑は条件分岐でそもそも実行させないようにして
少なくとも
hoge(a,b)
ここから推奨ってこと?
可変長ってそんな概念だったっけ・・?
336デフォルトの名無しさん (ワッチョイ da93-3Xrj)
2023/10/13(金) 10:48:38.24ID:zcTNSeqM0337デフォルトの名無しさん (ワッチョイ ae68-zwJs)
2023/10/13(金) 11:33:13.84ID:9tKKj3QG0 pythonの設計思想は知らんけど
>かへん‐ちょう〔‐チヤウ〕【可変長】 長さ・桁数・文字数・データの大きさなどが定まっていないこと。
言葉の意味からして
>同時にサポートするためにあるんじゃない
はさすがに違和感あるわ
>かへん‐ちょう〔‐チヤウ〕【可変長】 長さ・桁数・文字数・データの大きさなどが定まっていないこと。
言葉の意味からして
>同時にサポートするためにあるんじゃない
はさすがに違和感あるわ
338デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/13(金) 11:46:57.67ID:CVigb7Ut0 > 長さ・桁数・文字数・データの大きさ
のどれでもなく、パラメータの個数だよな
のどれでもなく、パラメータの個数だよな
339デフォルトの名無しさん (ワッチョイ 01bc-bwTL)
2023/10/13(金) 12:01:59.94ID:Ovg0M26I0 などが
340デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/13(金) 12:21:03.84ID:CVigb7Ut0 lengthが数を表すという文化が歪んでるんだよな
なんでlenじゃなくてsizeにしなかったんだろう
なんでlenじゃなくてsizeにしなかったんだろう
341デフォルトの名無しさん (ワッチョイ 8d2a-pUf+)
2023/10/13(金) 13:11:04.18ID:C21zpC1k0 自分の誤読をごまかすために文化に難癖つけ始めた
342デフォルトの名無しさん (ワッチョイ 5aad-VZIV)
2023/10/13(金) 14:03:08.40ID:6NvcCRtg0343デフォルトの名無しさん (ワッチョイ 0a5f-SXiR)
2023/10/13(金) 15:48:46.04ID:CCLNG/R30 単数・複数の定義からはじめないといけないのか
先の例を借りるなら
def add_user(user: User)が単数
def add_users(users: list[User])が複数
この2つを一つの関数でサポートしようとして
def add_user(*users: User)のようにするのが間違った可変長引数の使い方
先の例を借りるなら
def add_user(user: User)が単数
def add_users(users: list[User])が複数
この2つを一つの関数でサポートしようとして
def add_user(*users: User)のようにするのが間違った可変長引数の使い方
344デフォルトの名無しさん (ワッチョイ 5a47-f11/)
2023/10/13(金) 16:27:41.27ID:o2+w7ksq0345デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/13(金) 16:50:17.50ID:CVigb7Ut0 根拠がダサいだしな
ダサいかどうかを基準とする考え方はダサい
ダサいかどうかを基準とする考え方はダサい
346デフォルトの名無しさん (ワッチョイ da02-4yUX)
2023/10/13(金) 17:31:26.11ID:TNjzrdTI0 すべて羅列するなら(名前付き引数や**kwargsは除外)
単数
①def add_user(user: User) #一般的
②def add_user(user: List[User]) #関数名からListである必要性を連想できない
③def add_user(*user: User) #あるっちゃある例print
④def add_user(*user: List[User]) #②同様
複数
①def add_users(user: Users) #UsersのUser取り出しロジックがUsersのデータ型に依存、関数名での補足がいると思う
②def add_users(user: List[User]) #よくみる、①の発展、だがList展開ロジックが必須で暗黙的
③def add_users(*user: User) #=単数③、より明示的
④def add_users(*user: List[User]) #=単数④
単数④複数④は無い、関数名次第ではアリ
あくまでadd_user,add_users名でやるなら
単数①、単数③、複数③、複数②だな
本質は複数①②が同列に扱われている、という部分だと思う
単数
①def add_user(user: User) #一般的
②def add_user(user: List[User]) #関数名からListである必要性を連想できない
③def add_user(*user: User) #あるっちゃある例print
④def add_user(*user: List[User]) #②同様
複数
①def add_users(user: Users) #UsersのUser取り出しロジックがUsersのデータ型に依存、関数名での補足がいると思う
②def add_users(user: List[User]) #よくみる、①の発展、だがList展開ロジックが必須で暗黙的
③def add_users(*user: User) #=単数③、より明示的
④def add_users(*user: List[User]) #=単数④
単数④複数④は無い、関数名次第ではアリ
あくまでadd_user,add_users名でやるなら
単数①、単数③、複数③、複数②だな
本質は複数①②が同列に扱われている、という部分だと思う
347デフォルトの名無しさん (ワッチョイ 8d2a-dsh4)
2023/10/13(金) 18:25:27.74ID:/53+FR130 最近Python始めたんだがGitHubで公開されてるStableDiffusionのsafetensorsファイルをOnnxファイルに変換するスクリプトをクローンして使って見たんだ
その中でハギングフェイスのライブラリ使ってんだがそのライブラリに変更があったみたいでスクリプトがまともに動かなくなってた
Pythonってこういうことよくあるの?
その中でハギングフェイスのライブラリ使ってんだがそのライブラリに変更があったみたいでスクリプトがまともに動かなくなってた
Pythonってこういうことよくあるの?
348デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 18:29:10.51ID:sP+zp0cDa >>344
ごめん、そもそもadd_users(*users)と書く設計にしても全然動くわけで
どう書くと「書く側の人間が」「バグらせやすい」という話を一貫してしてると思ってたのでまさかそこが理解できないとは思わなかった
「バグりやすい」より「バグらせやすい」と書いたほうが親切だったね、どちらでも意味が通るけど
ごめん、そもそもadd_users(*users)と書く設計にしても全然動くわけで
どう書くと「書く側の人間が」「バグらせやすい」という話を一貫してしてると思ってたのでまさかそこが理解できないとは思わなかった
「バグりやすい」より「バグらせやすい」と書いたほうが親切だったね、どちらでも意味が通るけど
349デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 18:36:26.11ID:sP+zp0cDa >>330
来る配列の深さもshapeもわからないなら再帰で書くしかないからそれはスターアンパックで書いて構わないと思うよ
2重配列とか3重配列とか、numpyで言えばndimとかshapeの一部が決まってる多重配列を扱う場合にスターアンパック使うのはよくないと思う
こういうのは俺が勝手に言ってるだけでもなくて例えばEffective Pythonには4つ以上の要素を含む(1次元)配列をスターアンパックするなと書いてある
2重、3重、4重とかの組み込み型の多重配列は普通にコード書いて出てくるがそれらをほいほいスターアンパックすればよりバグを生みやすいと思う
add_users(*users)は俺にはアンチパターンに見える
来る配列の深さもshapeもわからないなら再帰で書くしかないからそれはスターアンパックで書いて構わないと思うよ
2重配列とか3重配列とか、numpyで言えばndimとかshapeの一部が決まってる多重配列を扱う場合にスターアンパック使うのはよくないと思う
こういうのは俺が勝手に言ってるだけでもなくて例えばEffective Pythonには4つ以上の要素を含む(1次元)配列をスターアンパックするなと書いてある
2重、3重、4重とかの組み込み型の多重配列は普通にコード書いて出てくるがそれらをほいほいスターアンパックすればよりバグを生みやすいと思う
add_users(*users)は俺にはアンチパターンに見える
350デフォルトの名無しさん (ワッチョイ dafa-h7+a)
2023/10/13(金) 19:36:16.66ID:v7U/yjft0 >add_users(*users)は俺には
嫌ならそう書かなければいいだけでは・・?
多重配列の生成とその扱いを混同してるんだと思うが
usersがUserクラスを持つならそれに従えばいいと思うぞ
例えば4つ以上といわず[np,np,np,,,,,]扱う、みたいなケースがあるのかはしらんが
無理にスターアンパックする必要ないわけで
>>308>書くのが明らかに簡潔なケースでは当然使うけど
と同じように逆然りでしょ
嫌ならそう書かなければいいだけでは・・?
多重配列の生成とその扱いを混同してるんだと思うが
usersがUserクラスを持つならそれに従えばいいと思うぞ
例えば4つ以上といわず[np,np,np,,,,,]扱う、みたいなケースがあるのかはしらんが
無理にスターアンパックする必要ないわけで
>>308>書くのが明らかに簡潔なケースでは当然使うけど
と同じように逆然りでしょ
351デフォルトの名無しさん (ワッチョイ 9501-XMkt)
2023/10/13(金) 19:38:42.67ID:gtyKnuUL0 print関数という実績
352デフォルトの名無しさん (ワッチョイ b10c-bncC)
2023/10/13(金) 19:57:29.33ID:rRALxWOX0 add_users(user1,user2)と書いてもadd_users(*users)と書いても動いちゃう
だから(書く側の人間が)バグらせやすいんだ
そんなことある・・?
False==0で動いちゃった、よりよっぽどましだと思うが。。
だって少なくともエディタの補助範囲内だし
だから(書く側の人間が)バグらせやすいんだ
そんなことある・・?
False==0で動いちゃった、よりよっぽどましだと思うが。。
だって少なくともエディタの補助範囲内だし
353デフォルトの名無しさん (ワッチョイ da3e-vdcw)
2023/10/13(金) 20:09:45.61ID:hDXnu7+A0 自分の取り扱ってるデータが何なのか理解せずに関数に渡すことがまずありえないしな
354デフォルトの名無しさん (ワッチョイ 5a79-GYY9)
2023/10/13(金) 20:24:35.57ID:ZA5Rx9q50 ・1つしか渡す機会がない
・リストしか渡す機会がない
・管理別々の2つ以上の変数を渡したい時がある
・処理速度が気になる場所
などなど
臨機応変に使い分けちゃえば?
・リストしか渡す機会がない
・管理別々の2つ以上の変数を渡したい時がある
・処理速度が気になる場所
などなど
臨機応変に使い分けちゃえば?
355デフォルトの名無しさん (ワッチョイ 76d6-n+VP)
2023/10/13(金) 20:46:44.55ID:K56rmpTB0 あんまり興味ないけど一言
print関数はプログラマにとっての使いやすさに特化してるから可変長引数でいいけど
普通の関数には使わないほうがいい
iterableを受け取る設計がいいことが多い
print関数はプログラマにとっての使いやすさに特化してるから可変長引数でいいけど
普通の関数には使わないほうがいい
iterableを受け取る設計がいいことが多い
356デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 20:47:33.98ID:e5Ke0Kb/a357デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 20:50:53.31ID:e5Ke0Kb/a 端的に言うと、プログラミングが苦手な人が書くコード
358デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 20:58:43.17ID:e5Ke0Kb/a そもそも自分一人しか見なくて完全にロジックを把握できてるコードなら縛り無く好きに書けばいいんだよ
ここでどう書くのがキレイか?とか聞く時点でバグらせづらさとか、プロジェクトとして複数人で共有した場合の能率の話とかしてると考えるのが当たり前だよね
なのにアンチパターンとかバグりやすいとか言われると怒る心理がよくわからんよ
add_user(*users)は書いたら恥ずかしいコードだよ
ここでどう書くのがキレイか?とか聞く時点でバグらせづらさとか、プロジェクトとして複数人で共有した場合の能率の話とかしてると考えるのが当たり前だよね
なのにアンチパターンとかバグりやすいとか言われると怒る心理がよくわからんよ
add_user(*users)は書いたら恥ずかしいコードだよ
359デフォルトの名無しさん (ワッチョイ daad-GqR6)
2023/10/13(金) 21:03:29.43ID:LOKUwuMW0 臨機応変な有志たちは、>>346単数①に収束してる >>354
・リストしか渡す機会がない
は個人的には例えば、土や木や葉っぱデータの詰まった森データを渡すことを想定していて
森をリスト型で渡すことは稀
土とかを原子レベルで分解すればリストでいいと思う
同じように、1枚の落ち葉の詰まった落ち葉群をリストで渡す、というのは稀な印象
普通は落ち葉群クラスの落ち葉群インスタンスで渡すと思う
ただ、何の木の種類の落ち葉なのか、重さや枯れ具合など
落ち葉オブジェクトにするまでもない場合
リストに入れて渡す、という選択をする場合はあるが
有志たちはそれはあまりやっていない印象
自分が知らないだけかもしれない
・リストしか渡す機会がない
は個人的には例えば、土や木や葉っぱデータの詰まった森データを渡すことを想定していて
森をリスト型で渡すことは稀
土とかを原子レベルで分解すればリストでいいと思う
同じように、1枚の落ち葉の詰まった落ち葉群をリストで渡す、というのは稀な印象
普通は落ち葉群クラスの落ち葉群インスタンスで渡すと思う
ただ、何の木の種類の落ち葉なのか、重さや枯れ具合など
落ち葉オブジェクトにするまでもない場合
リストに入れて渡す、という選択をする場合はあるが
有志たちはそれはあまりやっていない印象
自分が知らないだけかもしれない
360デフォルトの名無しさん (ワッチョイ 0930-D5CX)
2023/10/13(金) 21:07:38.31ID:x5KSOPoq0 問題提起になったコード見ると書き方のバリエーションだけで
使えや書けとは書いてないわけだが読解力の問題だったか
使えや書けとは書いてないわけだが読解力の問題だったか
361デフォルトの名無しさん (ワッチョイ ee90-6t2b)
2023/10/13(金) 21:08:39.43ID:Sy9RKGN20 >>355で結論が出ているよね。
362デフォルトの名無しさん (ワッチョイ 7da7-bUcQ)
2023/10/13(金) 21:17:00.73ID:tgPT4vYj0 可変長かリストがどちらが便利かこっちを使えなんて話はしてない >>355
363デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 21:21:31.49ID:e5Ke0Kb/a 組み込みのlistの時点でappendとextendが別れてるというのが全てだと思う
データを管理したいならappend(a)とappend(*a)が同時に使えるように書くべきじゃない
型チェックすれば済むとか、処理を把握してるから分かる、とか以前の問題で
どうしたらそういうコードを擁護しうるのかな……と思う
まあ苦手なものは仕方ないけどね
データを管理したいならappend(a)とappend(*a)が同時に使えるように書くべきじゃない
型チェックすれば済むとか、処理を把握してるから分かる、とか以前の問題で
どうしたらそういうコードを擁護しうるのかな……と思う
まあ苦手なものは仕方ないけどね
364デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/13(金) 21:26:32.61ID:CVigb7Ut0 単体で渡してもリストで渡しても処理してくれる
というのは便利なので、よく作るけどな
自分で作ったのに仕様を覚えられない、という原因が大きいかもしれない
というのは便利なので、よく作るけどな
自分で作ったのに仕様を覚えられない、という原因が大きいかもしれない
365デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 21:30:41.15ID:e5Ke0Kb/a そもそもPythonの関数定義が戻り値1つなら裸で2つなら長さ2のタプルとかいう設計だからね
可変長やアンパックがありがたい場面も当然ある
ただデータを管理するのにそんな書き方する必要は全くないって話
間違いなく不要
可変長やアンパックがありがたい場面も当然ある
ただデータを管理するのにそんな書き方する必要は全くないって話
間違いなく不要
366デフォルトの名無しさん (ワッチョイ 5aa5-8mGx)
2023/10/13(金) 21:39:09.86ID:fJskMopF0 同時に使えるように書くべきじゃないっていうが
append(*{})も普通に動くわけで
*を間違えてつけちゃった と 可変長として間違えました 結果、動いちゃいました
なんて前後でエラー処理する以外にチェックしようがないわけで
間違えた自体と関数分けるのとは話関係ないわな
appendとextendはまさに、可変長使わないなら関数名とアノテーション発生でってことでしょ
append(*{})も普通に動くわけで
*を間違えてつけちゃった と 可変長として間違えました 結果、動いちゃいました
なんて前後でエラー処理する以外にチェックしようがないわけで
間違えた自体と関数分けるのとは話関係ないわな
appendとextendはまさに、可変長使わないなら関数名とアノテーション発生でってことでしょ
367デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 21:45:01.00ID:e5Ke0Kb/a >>366
少なくともPythonのlistでは引数1個以外のappendは動かないけど、Pythonじゃない言語を触ってるのかな
まあこの一例でも分かるように、1次元配列ですらバグらせる人はバグらせるんだから
インターフェイスはどんな人でも確実に使えるようにしといたほうがいいよ
少なくともPythonのlistでは引数1個以外のappendは動かないけど、Pythonじゃない言語を触ってるのかな
まあこの一例でも分かるように、1次元配列ですらバグらせる人はバグらせるんだから
インターフェイスはどんな人でも確実に使えるようにしといたほうがいいよ
368デフォルトの名無しさん (ワッチョイ 8905-k2x6)
2023/10/13(金) 21:47:35.20ID:oLBZLdpr0 room.add_user(user) ←roomにuserをadd
room.add_users([]) ←roomにuser群リストをadd
list.append("a") ←リストに値をappend
list.extend([]) ←リストをリストによりextend
こうみるとわかりやすいな
関数名の情報量が全然違う
room.add_users([]) ←roomにuser群リストをadd
list.append("a") ←リストに値をappend
list.extend([]) ←リストをリストによりextend
こうみるとわかりやすいな
関数名の情報量が全然違う
369デフォルトの名無しさん (ワッチョイ ae5e-XtdT)
2023/10/13(金) 21:52:27.24ID:UzC3xoYA0 観点のちがいなだけでどれも同意できるけど
ひとりだけ変なのがおる
ひとりだけ変なのがおる
370デフォルトの名無しさん (ワッチョイ 0154-Y2ua)
2023/10/13(金) 21:56:26.67ID:CVigb7Ut0 奇遇だな
俺も圏外から攻撃したいだけの変なのを検出してる
俺も圏外から攻撃したいだけの変なのを検出してる
371デフォルトの名無しさん (ワッチョイ 0a08-bgjR)
2023/10/13(金) 21:56:28.96ID:yy2kD+Fp0 引数1個以外のappendは動かないから何なんだ??>>367
だね、としか言いようがないが。
むしろだからこそ一行の*辞書も*リストも動いちゃうわけで
append,extendが同時に使えるように書くべきじゃない起因ではないし
かといってスター根絶ってわけでもないでしょ、ってことでしょ
だね、としか言いようがないが。
むしろだからこそ一行の*辞書も*リストも動いちゃうわけで
append,extendが同時に使えるように書くべきじゃない起因ではないし
かといってスター根絶ってわけでもないでしょ、ってことでしょ
372デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 22:02:03.89ID:e5Ke0Kb/a >>371
ごめん、「動いちゃうわけで」の部分が全く理解できないけどどういう意味?
[].append(*a)はaが長さ1の配列で無い限り動かないけど
長さ2でも3でも全部エラーだけど長さ1の配列に限って動くからそれだけはアンパックで書ければ便利って意味?
正気とは思えないな~
ごめん、「動いちゃうわけで」の部分が全く理解できないけどどういう意味?
[].append(*a)はaが長さ1の配列で無い限り動かないけど
長さ2でも3でも全部エラーだけど長さ1の配列に限って動くからそれだけはアンパックで書ければ便利って意味?
正気とは思えないな~
373デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 22:14:15.69ID:e5Ke0Kb/a 仮に飛行機じゃないとした場合、一番よく使う組み込み型であるlistのappend/extendの仕様すらろくに理解してないで噛み付く人が複数いるスレってことになるが
まさかこのスレのレベルがそんな低いとは思わないから中点2つの・・使ってるアンパック大好きな人がなんか毎レス書き込む回線ブラウザ変えてることと結びつけそうになってしまうけどね
ツッコミどころあるコード乗せてツッコまれたら素直に受け入れたほうがいいよ
まさかこのスレのレベルがそんな低いとは思わないから中点2つの・・使ってるアンパック大好きな人がなんか毎レス書き込む回線ブラウザ変えてることと結びつけそうになってしまうけどね
ツッコミどころあるコード乗せてツッコまれたら素直に受け入れたほうがいいよ
374デフォルトの名無しさん (ワッチョイ 75e6-y8oP)
2023/10/13(金) 22:15:04.38ID:3PC3pmfU0 >>372
>append(a)とappend(*a)が同時に使えるように書くべきじゃない
上での>append(*a)
は>同時に使える、とのことから可変長引数へ渡すため
>*リストも動いちゃう
は、例えばappend(*["a"])とかで可変長引数のためではないでしょ
つまり可変長引数であろうがなかろうが>動いちゃうんだから
>同時に使えるように書くべきじゃない
が理由で >appendとextendが別れてるというのが全てだと思う
と断定するのは的外れ
>append(a)とappend(*a)が同時に使えるように書くべきじゃない
上での>append(*a)
は>同時に使える、とのことから可変長引数へ渡すため
>*リストも動いちゃう
は、例えばappend(*["a"])とかで可変長引数のためではないでしょ
つまり可変長引数であろうがなかろうが>動いちゃうんだから
>同時に使えるように書くべきじゃない
が理由で >appendとextendが別れてるというのが全てだと思う
と断定するのは的外れ
375デフォルトの名無しさん (ワッチョイ d533-Tqdi)
2023/10/13(金) 22:17:47.09ID:v2U3cWHO0 >長さ1の配列で無い限り動かないけど
動いててワロタ
動いててワロタ
376デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 22:24:28.94ID:e5Ke0Kb/a [].append(*[])
[].append(*[2,3,4])
これ動くかなぁ🤔
こんな明瞭な誤りに擁護がいっぱい付くって…😰
まあ間違い絶対認められないマンが暴れてるだけだろうけど
認められないならまずここで質問しなければいいのに
[].append(*[2,3,4])
これ動くかなぁ🤔
こんな明瞭な誤りに擁護がいっぱい付くって…😰
まあ間違い絶対認められないマンが暴れてるだけだろうけど
認められないならまずここで質問しなければいいのに
377デフォルトの名無しさん (ワッチョイ 6eea-p61u)
2023/10/13(金) 22:28:03.09ID:4579Uo5r0 >これ動くかなぁ
アスペ?
それが許されるならappend(*a)でエラーでたぞ
append無いって言われたから
あーおそらくリストのappendでaも適当に与えておいて、でやっと動いたが
アスペ?
それが許されるならappend(*a)でエラーでたぞ
append無いって言われたから
あーおそらくリストのappendでaも適当に与えておいて、でやっと動いたが
378デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 22:30:25.92ID:e5Ke0Kb/a >>374
そのレスがまさに「長さ2でも3でも全部エラーだけど長さ1の配列に限って動くからそれだけはアンパックで書ける」って意味じゃん
やっぱり正気とは思えないかな
それは位置引数1個の関数に引数1個渡してんだから動くよ
呼ぶ時にスターアンパック使ってるのが間違いなだけで
長さ2以上で動かないのにスターアンパックしてなんの意味が?
難しい文法は向いてないっぽいから無理しないほうがいいよ😅
そのレスがまさに「長さ2でも3でも全部エラーだけど長さ1の配列に限って動くからそれだけはアンパックで書ける」って意味じゃん
やっぱり正気とは思えないかな
それは位置引数1個の関数に引数1個渡してんだから動くよ
呼ぶ時にスターアンパック使ってるのが間違いなだけで
長さ2以上で動かないのにスターアンパックしてなんの意味が?
難しい文法は向いてないっぽいから無理しないほうがいいよ😅
379デフォルトの名無しさん (ワッチョイ 7683-pfWt)
2023/10/13(金) 22:35:20.34ID:xOQDGR0o0 >>378
もしかしてまったく理解してないのきみのほうでは
仮に可変長引数のappendがあったとして、append(*a)で書きたくなければ無理して書かなくていいんだぞ?
故に*付けた付けなかったってのは
>appendとextendが別れてるというのが全てだと思う
まったく繋がってない 的外れ
もしかしてまったく理解してないのきみのほうでは
仮に可変長引数のappendがあったとして、append(*a)で書きたくなければ無理して書かなくていいんだぞ?
故に*付けた付けなかったってのは
>appendとextendが別れてるというのが全てだと思う
まったく繋がってない 的外れ
380デフォルトの名無しさん (ワッチョイ 850e-iLfk)
2023/10/13(金) 22:40:02.91ID:79uhgkd/0 リスト結合する時は+使うわ
381デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 22:57:18.57ID:e5Ke0Kb/a >>379
仮にとかじゃなくてlistのappendの話だからね
list.appendは可変長引数取らないから
日本語読めない&list.appendの仕様も知らないのに食い下がる度量は認めるよ
でもPythonは向いてないかも
仮にとかじゃなくてlistのappendの話だからね
list.appendは可変長引数取らないから
日本語読めない&list.appendの仕様も知らないのに食い下がる度量は認めるよ
でもPythonは向いてないかも
382デフォルトの名無しさん (ワッチョイ 09b2-o32V)
2023/10/13(金) 23:19:09.90ID:Ds5LqbN70383デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 23:19:54.70ID:AHWiHfG4a [].append(*{})は普通に動く、というレベルの認識の人が無闇に可変長引数使わないほうがいいのは間違いないかな
Guidoに習ってappendとextendで分けて引数は常に1個にしよう
Guidoに習ってappendとextendで分けて引数は常に1個にしよう
384デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 23:25:55.75ID:AHWiHfG4a >>382
そもそも
add_user(user) ⇔ list.append
add_user(*users)⇔ list.extend
これらの比較の話として、同じメソッドに2通りに呼び出しを与えるべきでない、という文脈の話をしているので(しかもuserは自作クラス、usersは自作クラスのリストという制約がついているので混同しようがない)
そこで妙に食い下がっているのは単に君が議論を追えてないだけだよ
list.appendが可変長引数を取ると思っている君がねw
そもそも
add_user(user) ⇔ list.append
add_user(*users)⇔ list.extend
これらの比較の話として、同じメソッドに2通りに呼び出しを与えるべきでない、という文脈の話をしているので(しかもuserは自作クラス、usersは自作クラスのリストという制約がついているので混同しようがない)
そこで妙に食い下がっているのは単に君が議論を追えてないだけだよ
list.appendが可変長引数を取ると思っている君がねw
385デフォルトの名無しさん (アウアウアー Sa7e-wavJ)
2023/10/13(金) 23:26:55.88ID:AHWiHfG4a 自作クラスのオブジェクト ね
386デフォルトの名無しさん (ワッチョイ 0588-osJN)
2023/10/13(金) 23:36:32.04ID:sRXpRcqA0387デフォルトの名無しさん (ワッチョイ 5ae5-GWSq)
2023/10/13(金) 23:57:10.89ID:JzNLMdAt0 >appendとextendが別れてるというの は
>append(a)とappend(*a) のように >同時に使えるように書 けちゃうと不都合があるから >>363
可変長関係なく動く*aを失念してるわな どうみても
>append(a)とappend(*a) のように >同時に使えるように書 けちゃうと不都合があるから >>363
可変長関係なく動く*aを失念してるわな どうみても
388デフォルトの名無しさん (ワッチョイ eb7d-oXAT)
2023/10/14(土) 07:09:49.12ID:8MwVC+VG0 >>380
計算科学の世界とかなら話は別だけど、可読性を考えるとオペレーションでリストの処理を記述するのは微妙かも
計算科学の世界とかなら話は別だけど、可読性を考えるとオペレーションでリストの処理を記述するのは微妙かも
389デフォルトの名無しさん (スフッ Sd33-Kt/B)
2023/10/14(土) 14:06:37.16ID:tZ7gaNQAd390デフォルトの名無しさん (アウアウウー Sadd-f0fU)
2023/10/14(土) 16:44:20.26ID:x03gZ5vca391デフォルトの名無しさん (ワッチョイ d1e0-VGqS)
2023/10/15(日) 00:49:27.64ID:1GgH9uvV0 vim の外部Linux コマンド呼び出しみたいなものだろう
392デフォルトの名無しさん (ワッチョイ 7bad-rPjP)
2023/10/16(月) 06:31:16.76ID:SmfSm8IF0 anacondaで入れてみたけど
普通に入れたほうが楽?
だとよけいに
普通に入れたほうが楽?
だとよけいに
393デフォルトの名無しさん (ワッチョイ 7bad-rPjP)
2023/10/16(月) 06:31:27.47ID:SmfSm8IF0 vscodeだとよけいに
394デフォルトの名無しさん (ワッチョイ 29ad-fyXA)
2023/10/16(月) 07:33:26.99ID:dwn5MUgM0 普通とは?
395デフォルトの名無しさん (アウアウウー Sadd-f0fU)
2023/10/16(月) 10:10:32.26ID:kgcCjrnKa396デフォルトの名無しさん (ワッチョイ 7b7b-LFwp)
2023/10/17(火) 00:02:40.60ID:IDqb6kdg0 Google ColabでTwitterの自動投稿に成功したのですが、
いざEXE化しようと思い、VSCodeに移植しても動きません
というか、iniファイルの読み込みができないようなのですが、
何か方法ありますでしょうか?
一応、ini読み込み用の物なのですが、こちらもうまくいきませんでした。
また、スクリプトも実行すると raise KeyError(key) KeyError: 'BASE'と出して止まってしまいます。
よろしくお願いします。
# 設定ファイルを扱うモジュールをインポート
import configparser
# ConfigParserのインスタンス(特定の機能を持った変数)を取得
config = configparser.ConfigParser()
# 用意したconfig.iniを読み出し
config.read(".\config.ini")
# 変数Config_1の中から、"BASE"セクションの"speed"と"weight"項目の内容を取り出し
read_1 = config["BASE"]["speed"]
read_2 = config["BASE"]["weight"]
# 変数の内容を出力
print("read_1 =", cfg_read_1)
print("read_2 =", cfg_read_2)
いざEXE化しようと思い、VSCodeに移植しても動きません
というか、iniファイルの読み込みができないようなのですが、
何か方法ありますでしょうか?
一応、ini読み込み用の物なのですが、こちらもうまくいきませんでした。
また、スクリプトも実行すると raise KeyError(key) KeyError: 'BASE'と出して止まってしまいます。
よろしくお願いします。
# 設定ファイルを扱うモジュールをインポート
import configparser
# ConfigParserのインスタンス(特定の機能を持った変数)を取得
config = configparser.ConfigParser()
# 用意したconfig.iniを読み出し
config.read(".\config.ini")
# 変数Config_1の中から、"BASE"セクションの"speed"と"weight"項目の内容を取り出し
read_1 = config["BASE"]["speed"]
read_2 = config["BASE"]["weight"]
# 変数の内容を出力
print("read_1 =", cfg_read_1)
print("read_2 =", cfg_read_2)
397デフォルトの名無しさん (ワッチョイ 0101-ZsDs)
2023/10/17(火) 00:20:02.64ID:KXoPz/N40 まずはconfig.readの戻り値を確認
398デフォルトの名無しさん (ワッチョイ 7bad-rPjP)
2023/10/17(火) 03:17:56.82ID:gqGJp+iF0399デフォルトの名無しさん (アウアウウー Sadd-f0fU)
2023/10/17(火) 05:51:43.89ID:hOrq7F7ga config.read("./config.ini")
400デフォルトの名無しさん (ワッチョイ d9d3-VGqS)
2023/10/17(火) 09:39:25.08ID:IfpwnPMt0 config.iniの書き方なのでは
401デフォルトの名無しさん (スフッ Sd33-LFwp)
2023/10/17(火) 13:58:02.86ID:W1mvng0kd >>397,400
ありがとうございます。
返り値はNoneでした。
また、"./config.ini"やフォルダをつくって
"./config/config.ini"やフルパスも試しましたができませんでした。
何か環境構築が間違っている可能性があったりするのでしょうか?
GoogleColabではエラーなく実行できるのに・・・
(;´д`)
ありがとうございます。
返り値はNoneでした。
また、"./config.ini"やフォルダをつくって
"./config/config.ini"やフルパスも試しましたができませんでした。
何か環境構築が間違っている可能性があったりするのでしょうか?
GoogleColabではエラーなく実行できるのに・・・
(;´д`)
402デフォルトの名無しさん (JP 0H25-Fhx2)
2023/10/17(火) 14:15:23.43ID:lA46vkBGH GoogleColabではいくつかのモジュールが最初からインストールされている。
Vscodeでは必要なモジュールをpipでインストールする必要があるのでは?
Vscodeでは必要なモジュールをpipでインストールする必要があるのでは?
403デフォルトの名無しさん (アウアウウー Sadd-f0fU)
2023/10/17(火) 14:26:21.59ID:vCPpyEw2a もしそうなら
import configparser
でエラー出てるはずだけどそこは出てないんだろ
import configparser
でエラー出てるはずだけどそこは出てないんだろ
404デフォルトの名無しさん (アウアウウー Sadd-f0fU)
2023/10/17(火) 14:32:36.89ID:vCPpyEw2a vscode 内の python から観て './' が実際はどこなのかを確認した方が良いな
print(os.path.abspath('./'))
print(os.path.abspath('.'))
print(os.path.abspath('./'))
print(os.path.abspath('.'))
405デフォルトの名無しさん (ワッチョイ b332-jUDJ)
2023/10/17(火) 15:06:00.27ID:HxEc0Y/V0 >>396
そのコードのままだと
config.read(".\config.ini") はcolabでは読み込めなかったな
もしそのまま移植したって場合に
元はconfig.read("./config.ini")だったけど移植作業中に
".\config.ini"とか"絶対パス.\config.ini"になっちゃったとか?
そのコードのままだと
config.read(".\config.ini") はcolabでは読み込めなかったな
もしそのまま移植したって場合に
元はconfig.read("./config.ini")だったけど移植作業中に
".\config.ini"とか"絶対パス.\config.ini"になっちゃったとか?
406デフォルトの名無しさん (ワッチョイ c901-RNWa)
2023/10/17(火) 15:06:09.46ID:T5fw5RAV0 >>396
そのコードのままだと
config.read(".\config.ini") はcolabでは読み込めなかったな
もしそのまま移植したって場合に
元はconfig.read("./config.ini")だったけど移植作業中に
".\config.ini"とか"絶対パス.\config.ini"になっちゃったとか?
そのコードのままだと
config.read(".\config.ini") はcolabでは読み込めなかったな
もしそのまま移植したって場合に
元はconfig.read("./config.ini")だったけど移植作業中に
".\config.ini"とか"絶対パス.\config.ini"になっちゃったとか?
407デフォルトの名無しさん (ワッチョイ d9d3-VGqS)
2023/10/17(火) 15:22:55.43ID:IfpwnPMt0 カレントから読み出すコードは、実行方法や環境によってどこがカレントか変わるんだよな
設定は絶対パスで書くのが無難
設定は絶対パスで書くのが無難
408デフォルトの名無しさん (JP 0H25-Fhx2)
2023/10/17(火) 15:25:40.98ID:lA46vkBGH409デフォルトの名無しさん (ワッチョイ 0101-ZsDs)
2023/10/17(火) 17:27:49.44ID:idEJG0se0 >>401
>返り値はNoneでした。
config.readはempty listは返すけどNoneは返さないんだわ
インタプリタかデバッガを使って変数の値を確認したり
コードをステップ実行する方法を先に覚えたほうがいいかもしれない
>返り値はNoneでした。
config.readはempty listは返すけどNoneは返さないんだわ
インタプリタかデバッガを使って変数の値を確認したり
コードをステップ実行する方法を先に覚えたほうがいいかもしれない
410デフォルトの名無しさん (ワッチョイ d944-6Daa)
2023/10/17(火) 21:21:59.26ID:u48pYz2N0411デフォルトの名無しさん (ワッチョイ 7b7b-LFwp)
2023/10/17(火) 22:16:02.73ID:IDqb6kdg0 >>409
返り値が良くわかっておらず、
サンプルコードみてこれかなぁ・・・
という物でしたので、申し訳ありません。
プログラムはあまり手を出したことがなくあまりわかっていない状況です。
また、本来の目的はTwitterの自動投稿BOTの作成でしたので、
コンフィグ読み込みではなくベタ書きして
ビルドしたところ、無事に投稿できたので、
コンフィグ読み込み部分問題かと思っております。
import configparser
config = configparser.ConfigParser()
config.read("./config.ini")
なにか問題があれば、教えて頂けないでしょうか。
返り値が良くわかっておらず、
サンプルコードみてこれかなぁ・・・
という物でしたので、申し訳ありません。
プログラムはあまり手を出したことがなくあまりわかっていない状況です。
また、本来の目的はTwitterの自動投稿BOTの作成でしたので、
コンフィグ読み込みではなくベタ書きして
ビルドしたところ、無事に投稿できたので、
コンフィグ読み込み部分問題かと思っております。
import configparser
config = configparser.ConfigParser()
config.read("./config.ini")
なにか問題があれば、教えて頂けないでしょうか。
412デフォルトの名無しさん (ワッチョイ a910-Fhx2)
2023/10/17(火) 22:54:58.15ID:lA46vkBG0 ファイルの存在チェックを入れないと、ファイル読み込みでファイルが存在しなくてもその部分で特にエラーにならないようだ。
まずはファイルの存在チェックを入れてみては?
参考:このページの最初のプログラムは動いた。違いはencodingかな?
https://qiita.com/mimitaro/items/3506a444f325c6f980b2
まずはファイルの存在チェックを入れてみては?
参考:このページの最初のプログラムは動いた。違いはencodingかな?
https://qiita.com/mimitaro/items/3506a444f325c6f980b2
413デフォルトの名無しさん (ワッチョイ a910-Fhx2)
2023/10/17(火) 22:58:34.67ID:lA46vkBG0 あ、他に、ファイル名だけで指定するとデフォルトのフォルダが適用される。
./とかいらんだろ。
./とかいらんだろ。
414デフォルトの名無しさん (ワッチョイ a910-Fhx2)
2023/10/17(火) 23:10:27.55ID:lA46vkBG0 ちなみにPyinstallerでEXE化するのはGoogleColabでもできるらしいぞ。
415デフォルトの名無しさん (ワッチョイ fb90-/4nw)
2023/10/18(水) 08:47:33.24ID:PQ7Pmh1D0 >>411
絶対パスで指定してみたらどうでしょう。
絶対パスで指定してみたらどうでしょう。
416デフォルトの名無しさん (オッペケ Sr05-wwqB)
2023/10/18(水) 08:56:15.85ID:wdlP5gm8r417デフォルトの名無しさん (ワッチョイ 7b7b-LFwp)
2023/10/19(木) 00:28:52.94ID:QaFrapAv0418デフォルトの名無しさん (ワッチョイ 7154-bgYV)
2023/10/19(木) 09:37:09.09ID:Gku/AMr90 普通はファイルが無ければエラーにするべきだけど、
configは無ければデフォルトという動作も要求されるから微妙
configは無ければデフォルトという動作も要求されるから微妙
419デフォルトの名無しさん (ワッチョイ fb05-/4nw)
2023/10/19(木) 15:18:15.24ID:oX+KclHi0 PysinpleGUIの.FileBrowseで開くフォルダはどうにかして変えられんとですか?
420デフォルトの名無しさん (ワッチョイ d156-LlTV)
2023/10/19(木) 16:22:02.82ID:tj/mFVfZ0 FileBrowse(initial_folder='...')
421デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/21(土) 21:28:06.19ID:h0yPi2SA0 Python最近始めたのですがpy 〇〇.pyではちゃんと動いたスクリプトをpyinstallerでexe化したのですがexe化したものを実行してみるとErrorが出ます
スクリプトのときは仮想環境(Python3.3以降標準のvenv)で動かしていたのでその仮想環境内でpyinstallerでexe化しました
pyinstallerは仮想環境の中で実行すれば仮想環境のパッケージをすべてまとめてくれるのではないのですか?
それともそもそもpyinstaller自体がゴミカスでまともに.pyをexe化できないのですか?
以下のレスにプロンプトからの情報を貼ります
どこがエラー文なのかわかりません
スクリプトのときは仮想環境(Python3.3以降標準のvenv)で動かしていたのでその仮想環境内でpyinstallerでexe化しました
pyinstallerは仮想環境の中で実行すれば仮想環境のパッケージをすべてまとめてくれるのではないのですか?
それともそもそもpyinstaller自体がゴミカスでまともに.pyをexe化できないのですか?
以下のレスにプロンプトからの情報を貼ります
どこがエラー文なのかわかりません
422デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/21(土) 21:28:47.37ID:h0yPi2SA0 2023-10-21 18:57:04.0020775 [W:onnxruntime:Default, onnxruntime_pybind_state.cc:1987 onnxruntime::python::CreateInferencePybindStateModule] Init provider bridge failed.
Traceback (most recent call last):
File "importlib\metadata\__init__.py", line 563, in from_name
StopIteration
During handling of the above exception, another exception occurred:
↓続きます
Traceback (most recent call last):
File "importlib\metadata\__init__.py", line 563, in from_name
StopIteration
During handling of the above exception, another exception occurred:
↓続きます
423デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/21(土) 21:29:11.60ID:h0yPi2SA0 Traceback (most recent call last):
File "transformers\utils\versions.py", line 102, in require_version
File "importlib\metadata\__init__.py", line 1008, in version
File "importlib\metadata\__init__.py", line 981, in distribution
File "importlib\metadata\__init__.py", line 565, in from_name
importlib.metadata.PackageNotFoundError: No package metadata was found for tqdm
During handling of the above exception, another exception occurred:
↓続きます
File "transformers\utils\versions.py", line 102, in require_version
File "importlib\metadata\__init__.py", line 1008, in version
File "importlib\metadata\__init__.py", line 981, in distribution
File "importlib\metadata\__init__.py", line 565, in from_name
importlib.metadata.PackageNotFoundError: No package metadata was found for tqdm
During handling of the above exception, another exception occurred:
↓続きます
424デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/21(土) 21:29:38.85ID:h0yPi2SA0 Traceback (most recent call last):
File "diffusers\utils\import_utils.py", line 684, in _get_module
File "importlib\__init__.py", line 126, in import_module
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "PyInstaller\loader\pyimod02_importers.py", line 391, in exec_module
File "diffusers\pipelines\stable_diffusion\pipeline_stable_diffusion.py", line 20, in <module>
File "PyInstaller\loader\pyimod02_importers.py", line 391, in exec_module
File "transformers\__init__.py", line 26, in <module>
File "PyInstaller\loader\pyimod02_importers.py", line 391, in exec_module
File "transformers\dependency_versions_check.py", line 57, in <module>
File "transformers\utils\versions.py", line 117, in require_version_core
File "transformers\utils\versions.py", line 104, in require_version
importlib.metadata.PackageNotFoundError: No package metadata was found for The 'tqdm>=4.27' distribution was not found and is required by this application.
Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git main
↓続きます
File "diffusers\utils\import_utils.py", line 684, in _get_module
File "importlib\__init__.py", line 126, in import_module
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "PyInstaller\loader\pyimod02_importers.py", line 391, in exec_module
File "diffusers\pipelines\stable_diffusion\pipeline_stable_diffusion.py", line 20, in <module>
File "PyInstaller\loader\pyimod02_importers.py", line 391, in exec_module
File "transformers\__init__.py", line 26, in <module>
File "PyInstaller\loader\pyimod02_importers.py", line 391, in exec_module
File "transformers\dependency_versions_check.py", line 57, in <module>
File "transformers\utils\versions.py", line 117, in require_version_core
File "transformers\utils\versions.py", line 104, in require_version
importlib.metadata.PackageNotFoundError: No package metadata was found for The 'tqdm>=4.27' distribution was not found and is required by this application.
Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git main
↓続きます
425デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/21(土) 21:30:05.41ID:h0yPi2SA0 The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "onnxConverter.py", line 33, in <module>
File "<frozen importlib._bootstrap>", line 1229, in _handle_fromlist
File "diffusers\utils\import_utils.py", line 675, in __getattr__
File "diffusers\utils\import_utils.py", line 675, in __getattr__
File "diffusers\utils\import_utils.py", line 674, in __getattr__
File "diffusers\utils\import_utils.py", line 686, in _get_module
RuntimeError: Failed to import diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion because of the following error (look up to see its traceback):
No package metadata was found for The 'tqdm>=4.27' distribution was not found and is required by this application.
Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git main
[5820] Failed to execute script 'onnxConverter' due to unhandled exception!
終わりです
Traceback (most recent call last):
File "onnxConverter.py", line 33, in <module>
File "<frozen importlib._bootstrap>", line 1229, in _handle_fromlist
File "diffusers\utils\import_utils.py", line 675, in __getattr__
File "diffusers\utils\import_utils.py", line 675, in __getattr__
File "diffusers\utils\import_utils.py", line 674, in __getattr__
File "diffusers\utils\import_utils.py", line 686, in _get_module
RuntimeError: Failed to import diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion because of the following error (look up to see its traceback):
No package metadata was found for The 'tqdm>=4.27' distribution was not found and is required by this application.
Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git main
[5820] Failed to execute script 'onnxConverter' due to unhandled exception!
終わりです
426デフォルトの名無しさん (ワッチョイ 9946-5z4m)
2023/10/21(土) 22:23:26.42ID:9n8k9yEZ0427デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/21(土) 22:59:56.07ID:DDgBRs4V0 大抵は一番上以外はどうでもいいんだよな
428デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/21(土) 23:08:32.50ID:h0yPi2SA0 >>426
ありがとうございます
ありがとうございます
429デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/21(土) 23:09:24.37ID:h0yPi2SA0 tqdmのメタデータがないって感じなのでしょうか
430デフォルトの名無しさん (アウアウクー MMc5-gE6H)
2023/10/22(日) 01:28:21.12ID:EUQDeLnPM 自分を棚に上げてツールに文句言うゴミカス
431デフォルトの名無しさん (ワントンキン MM8a-oq3V)
2023/10/22(日) 04:53:10.13ID:HZnv6FtHM マルチポストの馬鹿
432デフォルトの名無しさん (テテンテンテン MMee-Komq)
2023/10/22(日) 06:41:22.07ID:nQ65Zno5M 何でexe化なんてことをするのか理解できない
Python入れて手実行じゃダメなんか
標準以外の実行方法を取るのはPythonの否定と冒涜だ
Python入れて手実行じゃダメなんか
標準以外の実行方法を取るのはPythonの否定と冒涜だ
433デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/22(日) 06:56:39.07ID:Agpi7r520 >>432
他人にPython入れるのを強要するほうが他人に対する冒涜だと思うのですが
他人にPython入れるのを強要するほうが他人に対する冒涜だと思うのですが
434デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/22(日) 07:00:36.37ID:Agpi7r520 >>430
一番聞きたいのは仮想環境内でpyinstaller使うと仮想環境内のパッケージすべて入りますよね?ってところなんですが…
まさかできないんですか?
本環境のパッケージが入ってくるとか?
今PCにごちゃごちゃ入れたくないので(Version管理も大変なので)本環境にはpipくらいしか入れてません
一番聞きたいのは仮想環境内でpyinstaller使うと仮想環境内のパッケージすべて入りますよね?ってところなんですが…
まさかできないんですか?
本環境のパッケージが入ってくるとか?
今PCにごちゃごちゃ入れたくないので(Version管理も大変なので)本環境にはpipくらいしか入れてません
435デフォルトの名無しさん (スップ Sd7a-Blpl)
2023/10/22(日) 10:18:34.02ID:hsNq0PHTd >>434
pyinstaller 仮想環境でググることもしてないの?
pyinstaller 仮想環境でググることもしてないの?
436デフォルトの名無しさん (ワッチョイ ce90-xUKY)
2023/10/22(日) 11:03:48.10ID:1hwURjPp0 思い通りにいかないとゴミカス扱いする輩には反応する必要なし
437デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/22(日) 11:13:24.56ID:/wNoCoYT0 被害妄想のかたまりだな
438デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/22(日) 11:51:05.33ID:Agpi7r520439デフォルトの名無しさん (スップ Sd7a-Blpl)
2023/10/22(日) 12:06:29.73ID:hsNq0PHTd440デフォルトの名無しさん (ワッチョイ 5d01-gE6H)
2023/10/22(日) 13:24:24.73ID:QLmKzOHx0 もう聞かないって本人が言ってるんだしほっとけばいいじゃん
彼にはpyinstallerがコケること含めてあらゆる全てが自分への攻撃に感じるんだろう
彼にはpyinstallerがコケること含めてあらゆる全てが自分への攻撃に感じるんだろう
441デフォルトの名無しさん (ワッチョイ 55dd-ANn9)
2023/10/22(日) 22:15:21.64ID:N5qxvd050 PyPIにアップロードするんじゃなくても、pip installでインストールできるパッケージを作成する方法は学んで損はないと思う
442デフォルトの名無しさん (ワッチョイ 9910-OCAv)
2023/10/22(日) 22:30:37.98ID:oSgNjv9Y0 def find_data_file(filename):
if getattr(sys, "frozen", False): # exe
datadir = os.path.dirname(sys.executable)
else:
datadir = os.path.dirname(__file__) # script
full_path = os.path.join(datadir, filename)
return os.path.normpath(full_path)
if getattr(sys, "frozen", False): # exe
datadir = os.path.dirname(sys.executable)
else:
datadir = os.path.dirname(__file__) # script
full_path = os.path.join(datadir, filename)
return os.path.normpath(full_path)
443デフォルトの名無しさん (ワッチョイ 9910-OCAv)
2023/10/22(日) 22:50:39.51ID:oSgNjv9Y0 Pyinstallerでの問題回避のいくつか
--hidden-import オプションでPyInstallerが自動的に検出できないインポートを手動指定
--additional-hooksオプションでhook ファイルでの依存関係指定
specファイルでバイナリをビルドに含めるようにする
あと>>442
それからライブラリのバージョン
アップデートで解決するかもしれないし
ダウングレードで解決できるかもしれない
あとはPyinstallerをあきらめてNuitkaを使うか
Python embeddable
--hidden-import オプションでPyInstallerが自動的に検出できないインポートを手動指定
--additional-hooksオプションでhook ファイルでの依存関係指定
specファイルでバイナリをビルドに含めるようにする
あと>>442
それからライブラリのバージョン
アップデートで解決するかもしれないし
ダウングレードで解決できるかもしれない
あとはPyinstallerをあきらめてNuitkaを使うか
Python embeddable
444デフォルトの名無しさん (ワッチョイ d689-fpqW)
2023/10/23(月) 00:24:28.19ID:I4rSmsoT0 はじめからC++でやれば簡単なのに
445デフォルトの名無しさん (ワッチョイ 9963-W2Yk)
2023/10/23(月) 00:34:04.07ID:F+bevqoz0 必要なpython環境を構築しちゃったほうが早かったりしてw
446デフォルトの名無しさん (テテンテンテン MMee-Komq)
2023/10/23(月) 04:54:06.15ID:vn1oo3qwM そもそもPythonを入れたくない/入れられないPCなら
exeを持ち込むこともできないはずなんだが
exeを持ち込むこともできないはずなんだが
447デフォルトの名無しさん (ワッチョイ dd2a-6qmC)
2023/10/23(月) 08:20:39.11ID:aHgroAah0 >>446
入れたくないではなく入れるのがめんどいってのが一般人の感想だと思うんだが
例えばphotoshopだのCubaseだのexeを入れれば起動できてそれでPythonを個別にインストールする必要がないわけじゃん
君たちはプログラマーだから別にいいんだが一般人が使おうとするとき〇〇を個別にインストールする必要がありますじゃ誰も使ってくれんのよ
入れたくないではなく入れるのがめんどいってのが一般人の感想だと思うんだが
例えばphotoshopだのCubaseだのexeを入れれば起動できてそれでPythonを個別にインストールする必要がないわけじゃん
君たちはプログラマーだから別にいいんだが一般人が使おうとするとき〇〇を個別にインストールする必要がありますじゃ誰も使ってくれんのよ
448デフォルトの名無しさん (スップ Sd7a-Blpl)
2023/10/23(月) 09:22:02.13ID:5zTmU8end ゴミカス君まだいるじゃん
少しはググってみた?
少しはググってみた?
449デフォルトの名無しさん (スプッッ Sd7a-2fhy)
2023/10/23(月) 13:42:29.15ID:U8r3L/aFd dllとかも面倒だもんな
でもそれなら、windowsならC#とか、androidならkotlinとか
言語を変えてしまった方がいいかも
でもそれなら、windowsならC#とか、androidならkotlinとか
言語を変えてしまった方がいいかも
450デフォルトの名無しさん (ワッチョイ 1ae7-+PKl)
2023/10/23(月) 13:42:53.12ID:kClWNwaY0 ChatGPT に聞かない香具師は、使い物にならない!
人に聞く前に、ChatGPT・検索するのはマナー。
他人に、箸の上げ下ろしまで聞くものじゃない!
開発者は自走力。
細かい事まで、何でも隣の香具師に聞いてはならない!
これは会社の常識。
自分でやらない香具師には、誰も教えない
これが開発者
人に聞く前に、ChatGPT・検索するのはマナー。
他人に、箸の上げ下ろしまで聞くものじゃない!
開発者は自走力。
細かい事まで、何でも隣の香具師に聞いてはならない!
これは会社の常識。
自分でやらない香具師には、誰も教えない
これが開発者
451デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/23(月) 13:59:16.06ID:RLO04Gxh0 ランタイムとかもバージョンぐちゃぐちゃ
リリース時点は全て最新で問題なく動くんだけど、
そのうち怪しくなってくる
必要なもの全部入りでリリースするのが鉄板
リリース時点は全て最新で問題なく動くんだけど、
そのうち怪しくなってくる
必要なもの全部入りでリリースするのが鉄板
452デフォルトの名無しさん (ワッチョイ 8e74-fb7B)
2023/10/23(月) 14:19:59.17ID:CJYAK+hs0 MSがコンテナ動作するだけのミニマルなOSでWSLを初期導入しておいてくれれば
OS関係なくLinuxコンテナで配布できるのにな
OS関係なくLinuxコンテナで配布できるのにな
453デフォルトの名無しさん (アウアウウー Sa09-6i8i)
2023/10/23(月) 15:34:55.82ID:1Wk/iiy/a exe化しても表面的なもので
結局python.dllは必要でサイズもデカいし
関連するモジュールも結局要るし
それなら普通にpython環境入れてるのと変わらないし
後者の方がずっと楽
どうしても嫌ならdockerとか箱庭でやれ
結局python.dllは必要でサイズもデカいし
関連するモジュールも結局要るし
それなら普通にpython環境入れてるのと変わらないし
後者の方がずっと楽
どうしても嫌ならdockerとか箱庭でやれ
454デフォルトの名無しさん (スップ Sd7a-Blpl)
2023/10/23(月) 15:51:37.62ID:1BaXlGhyd455デフォルトの名無しさん (アウアウウー Sa09-6i8i)
2023/10/23(月) 16:12:09.16ID:1Wk/iiy/a もう一つ言うと
pythonで造ったexeが一個ならそんなに問題にならなくても
もしそのアプリが好評でまた違うものをpythonでexe化したら
exe化するたびに無駄なサイズで増殖するんだろ
pythonの使い方を間違ってるよな
pythonで造ったexeが一個ならそんなに問題にならなくても
もしそのアプリが好評でまた違うものをpythonでexe化したら
exe化するたびに無駄なサイズで増殖するんだろ
pythonの使い方を間違ってるよな
456デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/23(月) 16:18:01.18ID:RLO04Gxh0 それが正解な気がするけどな
ツール一つごとに必要な環境全部入りでインストールする
各々が似たようなものを呼び出している
HDDもったいないから共通化しようぜ、という思いをぐっと堪える
ツール一つごとに必要な環境全部入りでインストールする
各々が似たようなものを呼び出している
HDDもったいないから共通化しようぜ、という思いをぐっと堪える
457デフォルトの名無しさん (スップ Sd7a-Blpl)
2023/10/23(月) 16:26:34.31ID:1BaXlGhyd >>455
その程度でユーザーの実行環境に関する手間やトラブルを回避できるなら御の字よ
その程度でユーザーの実行環境に関する手間やトラブルを回避できるなら御の字よ
458デフォルトの名無しさん (ワッチョイ 1ad4-DQ5z)
2023/10/23(月) 17:04:01.26ID:afiA/f7c0 社内ならともかく一般ユーザーにPythonで作ったクライアントアプリを配布しようとするのが頭おかしい
459デフォルトの名無しさん (ワッチョイ 9963-W2Yk)
2023/10/23(月) 17:33:23.61ID:F+bevqoz0 実行に限定したpythonランタイムがあると、
それ入れろで済むんだけどな
必要なモジュールはどうなるのかは問題だけど
それ入れろで済むんだけどな
必要なモジュールはどうなるのかは問題だけど
460デフォルトの名無しさん (ワッチョイ c1a1-eJ97)
2023/10/23(月) 18:11:40.25ID:X+bEqpUU0 今の時代exeサイズを気にするもんなのか
461デフォルトの名無しさん (スップ Sd7a-Blpl)
2023/10/23(月) 18:32:45.73ID:1BaXlGhyd 自分の主張のためにexe化の欠点を無理やりひねり出してるんだろう
462デフォルトの名無しさん (ワッチョイ 5d01-gE6H)
2023/10/23(月) 20:12:10.52ID:I6hV5An00 VLCのライブラリ使ったGUIツールexe化したら500MBくらいになってワロタ
463デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/23(月) 20:22:10.10ID:RLO04Gxh0 androidのアプリだってくそでかapkに全部入ってて、
別途VBのランタイムのインストールが必要だったりしない
バージョンアップする時は全差し替え
判りやすくていい
別途VBのランタイムのインストールが必要だったりしない
バージョンアップする時は全差し替え
判りやすくていい
464デフォルトの名無しさん (ワッチョイ c11e-5rsW)
2023/10/23(月) 21:48:20.27ID:sq2Mloc50 後で「なんか作ったexeがウイルス判定されるんですけど?」とか言い出すと思ってる
465デフォルトの名無しさん (スップ Sd7a-Blpl)
2023/10/23(月) 22:03:39.38ID:1BaXlGhyd もうただの言いがかりだな
466デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/23(月) 22:18:51.31ID:RLO04Gxh0 考案したアルゴリズムの公表という点では要素のみの方が合理的だけど、
それを実際に使う側としては全部込みじゃないと落ちこぼれる人が出るという二律背反
それを実際に使う側としては全部込みじゃないと落ちこぼれる人が出るという二律背反
467デフォルトの名無しさん (ワントンキン MM8a-gIwh)
2023/10/24(火) 00:36:05.53ID:whni/swFM468デフォルトの名無しさん (ワッチョイ 9910-OCAv)
2023/10/24(火) 01:20:59.11ID:UF+GcpRf0469デフォルトの名無しさん (ワッチョイ ce05-xUKY)
2023/10/24(火) 13:45:14.02ID:LsvdxPow0 python のバージョンって、3.12.0ってのが出てるらしいけど、これにとっとと変えたほうがええの?
470デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/24(火) 13:58:19.07ID:5goNV1KS0 自分は使わない機能でも、使ってるモジュールが使ってると、
pythonが古いからという理由でモジュールも古いままにされるので、
あんまり古いのを使い続けるのはデメリットがある
pythonが古いからという理由でモジュールも古いままにされるので、
あんまり古いのを使い続けるのはデメリットがある
471デフォルトの名無しさん (ワッチョイ 55ae-ANn9)
2023/10/24(火) 14:15:41.59ID:h9k+d5//0 その判断ができないなら、今使ってるPythonがeolじゃない限りは変えるメリットはない
472デフォルトの名無しさん (ワッチョイ cdb1-3UYf)
2023/10/24(火) 15:40:01.70ID:Cc6poWtT0 文字列A、Bがあって、元の文字列とどっちが類似してるかの調べたかったんだけど
「自分で作るにはどうしたもんか。作るの大変そうだな。」って悩んでて、グーグル先生に聞いたらLevenshteinってパッケージを教えてくれた。
スゴイぞpython。
問題解決だねw
「自分で作るにはどうしたもんか。作るの大変そうだな。」って悩んでて、グーグル先生に聞いたらLevenshteinってパッケージを教えてくれた。
スゴイぞpython。
問題解決だねw
473デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/24(火) 15:45:39.21ID:5goNV1KS0 画像の似てる似てないに関しても距離を定義して計算できる
474デフォルトの名無しさん (ワッチョイ 9963-W2Yk)
2023/10/24(火) 16:35:56.44ID:chYaw+k50475デフォルトの名無しさん (ワッチョイ d67b-awiV)
2023/10/24(火) 16:46:58.45ID:OIY4VRIG0476デフォルトの名無しさん (ワッチョイ fa33-gIwh)
2023/10/24(火) 20:39:18.24ID:Glt/wbhT0 python をバージョンアップする際は
使っているライブラリの対応状況をググった方が良い
使っているライブラリの対応状況をググった方が良い
477デフォルトの名無しさん (ワッチョイ 8ebd-fb7B)
2023/10/24(火) 20:48:08.54ID:IwR1PZEy0 配布元いけばええのにググるんだ
478デフォルトの名無しさん (ワッチョイ 9910-OCAv)
2023/10/24(火) 22:09:01.76ID:UF+GcpRf0 競合のライブラリの方に詳しい情報があったりする
479デフォルトの名無しさん (ワッチョイ 8e2a-DQ5z)
2023/10/24(火) 22:18:41.75ID:dsbQWtPA0 いまだに一個ずつ人間が目視でチェックしないといけない状況に疑問を持とう
480デフォルトの名無しさん (テテンテンテン MMee-6kM7)
2023/10/24(火) 23:24:19.78ID:rXrUZylsM 生成AIのお陰で考える事がますます無くなったなぁ
活用出来るものだけが生き残るのかなぁ
と、言っても誰でも活用できるよなぁw
スッタクオボーフレーとかキターとかお役御免かもな
活用出来るものだけが生き残るのかなぁ
と、言っても誰でも活用できるよなぁw
スッタクオボーフレーとかキターとかお役御免かもな
481デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/24(火) 23:46:21.58ID:5goNV1KS0 生成系AIはすぐに行き詰まるよ
人間が既に作ったものの真似しかできないので、真似の精度が上がり切ったら終わり
人間が既に作ったものの真似しかできないので、真似の精度が上がり切ったら終わり
482デフォルトの名無しさん (ワッチョイ a549-f0DH)
2023/10/25(水) 12:27:08.15ID:ajj3vQHl0 君らは、Ruby のBundler、npm/yarn など、
プロジェクト内の依存モジュールの整合性をチェックしないのか?
君らは開発者じゃないだろw
exe 化については、Ruby on Rails 製のRedmine とかでも、exe化できるのかな?
Windows 用のインストール方法はあるけど
MSYS2, Rails, ImageMagick,
データベースはPostgreSQL など
プロジェクト内の依存モジュールの整合性をチェックしないのか?
君らは開発者じゃないだろw
exe 化については、Ruby on Rails 製のRedmine とかでも、exe化できるのかな?
Windows 用のインストール方法はあるけど
MSYS2, Rails, ImageMagick,
データベースはPostgreSQL など
483デフォルトの名無しさん (ワッチョイ ed5f-ANn9)
2023/10/26(木) 01:09:28.92ID:A8ieLS5R0 pyautogui.press(key)において、OEM_3を入力させたいけどpythonでは対応してない?他にコードってあるの?
484デフォルトの名無しさん (ワッチョイ ed5f-ANn9)
2023/10/26(木) 01:18:21.38ID:A8ieLS5R0 pyautoguiの資料を見ると「@」もしくは「`」の入力には対応してるみたいだけど出来ないなぁ
https://pyautogui.readthedocs.io/en/latest/keyboard.html
https://pyautogui.readthedocs.io/en/latest/keyboard.html
485デフォルトの名無しさん (ワッチョイ ed5f-ANn9)
2023/10/26(木) 01:31:00.09ID:A8ieLS5R0 エディタ上だとちゃんと反応してるけどブラウザ上では無理っぽい。求めてる挙動と違う
486デフォルトの名無しさん (ワッチョイ 8ef5-fb7B)
2023/10/26(木) 08:20:18.04ID:ylE4orVc0487デフォルトの名無しさん (ワッチョイ f93a-Pfhf)
2023/10/26(木) 08:50:54.81ID:rs0zBr0W0 >>476
恐ろしくてバージョンアップなんて出来ない
という訳でAnacondaに別環境をより新バージョンのpython入りで前環境のライブラリをファイルで読ませて入れていく
ryeだともっと簡単というがどうなんだろう
恐ろしくてバージョンアップなんて出来ない
という訳でAnacondaに別環境をより新バージョンのpython入りで前環境のライブラリをファイルで読ませて入れていく
ryeだともっと簡単というがどうなんだろう
488デフォルトの名無しさん (ワッチョイ ed5f-ANn9)
2023/10/26(木) 18:02:01.37ID:A8ieLS5R0489デフォルトの名無しさん (ワッチョイ d689-fpqW)
2023/10/26(木) 18:39:57.46ID:WGT0kSWk0 こんだみたいに他人が作った環境なんて恐ろしくて使えんわ
490デフォルトの名無しさん (スフッ Sd9a-JiYE)
2023/10/26(木) 19:26:31.99ID:ZcVI+/A3d 何をしにこのスレに来てるんだ?
心配なら機械語でイチから組めばいい
信頼性はピカイチだぞ
心配なら機械語でイチから組めばいい
信頼性はピカイチだぞ
491デフォルトの名無しさん (ワッチョイ cd68-6kM7)
2023/10/27(金) 07:10:55.34ID:95iydHFu0 なんに使うのか知らんが
pyautoguiが必要な状況に問題があると考えるべきで
pyautoguiが必要な状況に問題があると考えるべきで
492デフォルトの名無しさん (テテンテンテン MMee-Komq)
2023/10/27(金) 07:33:51.20ID:p0bVtqbiM みんなライブラリで楽しようとし過ぎだよね
ブラックボックスだから中を知らなくても使えるが
ひとたびハマれば無間地獄に陥るリスクを覚悟できていない人が多い
やはりプログラムはライブラリに頼らず自分でコツコツと作ってこそだよ
ブラックボックスだから中を知らなくても使えるが
ひとたびハマれば無間地獄に陥るリスクを覚悟できていない人が多い
やはりプログラムはライブラリに頼らず自分でコツコツと作ってこそだよ
493デフォルトの名無しさん (ワッチョイ 9154-7Q4E)
2023/10/27(金) 07:59:37.19ID:VEMgZlfJ0 pythonすら使わず、言語設計から自分でコツコツやるべき
494デフォルトの名無しさん (ワッチョイ c1c6-Pfhf)
2023/10/27(金) 09:12:11.79ID:HdER+Kt30 重いconda
試練
試練
495デフォルトの名無しさん (ワッチョイ ce90-xUKY)
2023/10/27(金) 12:21:11.67ID:Tg/eVNRm0 ふるっ!
496デフォルトの名無しさん (ワッチョイ f919-6kM7)
2023/10/27(金) 13:26:25.40ID:tmcCP2H+0 まぁ好んでconda使うヤツの気が知れん
497デフォルトの名無しさん (ワッチョイ 610b-chvG)
2023/10/28(土) 13:34:13.06ID:QFK90jmU0 プロの開発者は、
日本人が作った、多言語バージョンマネージャーのanyenv を使う。
同様のツールに、asdf もある
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv
他には、Docker を使う
各言語で、使い方がバラバラなバージョンマネージャーはややこしい。
Python はvenv、Ruby はrbenv、JS はn とか
日本人が作った、多言語バージョンマネージャーのanyenv を使う。
同様のツールに、asdf もある
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv
他には、Docker を使う
各言語で、使い方がバラバラなバージョンマネージャーはややこしい。
Python はvenv、Ruby はrbenv、JS はn とか
498デフォルトの名無しさん (ワッチョイ 4954-ybhY)
2023/10/28(土) 13:46:56.01ID:umtoXwly0 全部最新で問題なし
499デフォルトの名無しさん (テテンテンテン MM8b-eP3M)
2023/10/28(土) 14:31:28.70ID:gVz4J4xYM ライブラリりやツールをいろいろ入れてると
そのうちそれらの相性や設定の管理に要する手間が増えてきて
コードを書く時間が少なくなって詰む
そのうちそれらの相性や設定の管理に要する手間が増えてきて
コードを書く時間が少なくなって詰む
500デフォルトの名無しさん (ワッチョイ 93ea-STuf)
2023/10/28(土) 15:27:38.08ID:kl2pZ05R0 >>492
ライブラリで楽したいって考える人が選ぶ言語がPythonだとおもうの
ライブラリで楽したいって考える人が選ぶ言語がPythonだとおもうの
501デフォルトの名無しさん (ワッチョイ e1b1-g0O5)
2023/10/28(土) 15:57:05.27ID:rtxFeUD30 >>492
ライブラリ作ってる人のが遥かに優秀だと思うw
ライブラリ作ってる人のが遥かに優秀だと思うw
502デフォルトの名無しさん (ワッチョイ 197c-l9bj)
2023/10/28(土) 19:05:48.03ID:DNCLCg0B0503デフォルトの名無しさん (ワッチョイ 4954-ybhY)
2023/10/28(土) 19:21:08.30ID:umtoXwly0 さすがpython、こんなもんまである
ということはよくあるけどな
ということはよくあるけどな
504デフォルトの名無しさん (ワッチョイ f37f-jgoi)
2023/10/28(土) 19:33:35.10ID:2CLqi+B00 Mojoにどれだけのライブラリ使えるようになるんだろうか
505デフォルトの名無しさん (ワッチョイ 9b08-czOC)
2023/10/28(土) 20:52:21.49ID:G9+zV7us0 CPythonとABIも互換なんでしょ
ほぼ動くんちゃうかな
ほぼ動くんちゃうかな
506デフォルトの名無しさん (ワッチョイ 29d4-DD6R)
2023/10/28(土) 21:02:32.40ID:3CL4WWXh0 なんだかんだライブラリあるしpythonでGUIから作ってしまう…
507デフォルトの名無しさん (ワッチョイ 9b7b-7bAz)
2023/10/29(日) 17:29:52.83ID:yP8aR5sK0 現在、TwitterアナリティクスのJsonを
読みこもうとしていろいろ試行錯誤しています。
範囲の日時指定がエポックミリ秒だということは分かったので、
Time関数を使って、以下のようなモジュールを作りました。
import time
epoch_now = time.time()* 1000
epoch_yesterday = epoch_now - 60*60*24*8*1000
print (epoch_yesterday)
この場合、ステータスコードが500で帰ってきてしまい、
取得できるJson(account_stats.json)と取得できないJson(summary.json)が返ってきます。
そこで、取得できたJsonを見ると取得範囲のエポックミリ秒が
1697846400000~1698624000000
(2023 年 10 月 21 日 9:00:0000~2023 年 10 月 30 日 9:00:0000)
となっており、上記の値を突っ込むことでsummary.jsonも取得できました。
このような0時ちょうど(GMT+9)のエポックミリ秒を生成する手法は何かありますでしょうか?
切り上げも考えたのですが、どうもGMT+9でないと駄目なようです。
読みこもうとしていろいろ試行錯誤しています。
範囲の日時指定がエポックミリ秒だということは分かったので、
Time関数を使って、以下のようなモジュールを作りました。
import time
epoch_now = time.time()* 1000
epoch_yesterday = epoch_now - 60*60*24*8*1000
print (epoch_yesterday)
この場合、ステータスコードが500で帰ってきてしまい、
取得できるJson(account_stats.json)と取得できないJson(summary.json)が返ってきます。
そこで、取得できたJsonを見ると取得範囲のエポックミリ秒が
1697846400000~1698624000000
(2023 年 10 月 21 日 9:00:0000~2023 年 10 月 30 日 9:00:0000)
となっており、上記の値を突っ込むことでsummary.jsonも取得できました。
このような0時ちょうど(GMT+9)のエポックミリ秒を生成する手法は何かありますでしょうか?
切り上げも考えたのですが、どうもGMT+9でないと駄目なようです。
508デフォルトの名無しさん (ワッチョイ 197c-l9bj)
2023/10/29(日) 18:11:34.96ID:f808PyJm0 +9時間なんだからUTCって事やろ
基本から学んでこい
プログラム云々じゃ無くて小学生の社会科で日付変更線習うやろ
基本から学んでこい
プログラム云々じゃ無くて小学生の社会科で日付変更線習うやろ
509デフォルトの名無しさん (ワッチョイ cb01-Nf2/)
2023/10/29(日) 18:34:57.27ID:bhsBnVvp0510デフォルトの名無しさん (ワッチョイ 9b7b-7bAz)
2023/10/29(日) 20:28:03.18ID:yP8aR5sK0 >>508
+9でJSTになっているのは理解していました。
書き方が悪く、伝わりにくくて申し訳ない
>>509
ありがとうございます。
この書き方だと、実行毎に日付の入れ直しがいりますよね・・?
こちらで強引に生成することで何とかなりそうです。
unix_start_time = datetime.datetime(year=1970, month=1, day=1, hour=0)
#今の日時取得
now_day = datetime.datetime.now()
#今日-1970/1/1 0:0:0の引き算
epoch_day = now_day - unix_start_time
now_epoch = epoch_day.days
#エポック秒計算
now_epoch_time = 60*60*24*now_epoch
また、Json形式でデータを引っ張ることに関してお聞きしたいのですが、
{
"html": ・・・・・(以下略)
"timeseries": {
"tweetviews": [
[ 1697846400000, 456 ],
[ 1697932800000, 466 ],
[ 1698451200000, 324 ]
],
}
のデータである場合、tweetviewsからうまくカンマ後の数字だけ引っ張ることは出来ますでしょうか?
print (json.dumps(data["timeseries"]["tweetviews"][-1], indent=4))
だと、[1698451200000,324]のような形で帰ってきてしまうので、324だけ抽出したいのですが・・・・
+9でJSTになっているのは理解していました。
書き方が悪く、伝わりにくくて申し訳ない
>>509
ありがとうございます。
この書き方だと、実行毎に日付の入れ直しがいりますよね・・?
こちらで強引に生成することで何とかなりそうです。
unix_start_time = datetime.datetime(year=1970, month=1, day=1, hour=0)
#今の日時取得
now_day = datetime.datetime.now()
#今日-1970/1/1 0:0:0の引き算
epoch_day = now_day - unix_start_time
now_epoch = epoch_day.days
#エポック秒計算
now_epoch_time = 60*60*24*now_epoch
また、Json形式でデータを引っ張ることに関してお聞きしたいのですが、
{
"html": ・・・・・(以下略)
"timeseries": {
"tweetviews": [
[ 1697846400000, 456 ],
[ 1697932800000, 466 ],
[ 1698451200000, 324 ]
],
}
のデータである場合、tweetviewsからうまくカンマ後の数字だけ引っ張ることは出来ますでしょうか?
print (json.dumps(data["timeseries"]["tweetviews"][-1], indent=4))
だと、[1698451200000,324]のような形で帰ってきてしまうので、324だけ抽出したいのですが・・・・
511デフォルトの名無しさん (ワッチョイ 9beb-9em/)
2023/10/29(日) 21:03:20.54ID:1NQ6b9su0 エェェ・・・
512デフォルトの名無しさん (ワッチョイ 29d4-dxLF)
2023/10/29(日) 21:25:12.23ID:DijUnBtx0 >>510
data["timeseries"]["tweetviews"][-1][-1]
data["timeseries"]["tweetviews"][-1][-1]
513デフォルトの名無しさん (ワッチョイ d1c5-FetF)
2023/10/31(火) 03:39:22.60ID:l7n6wkIv0 pycon炎上してんな
514デフォルトの名無しさん (ワッチョイ 4954-ybhY)
2023/10/31(火) 09:35:31.31ID:FC+25GL80 import re
str = r'\path\file.ext'
m = re.search(r'\\(.+?)\.ext', str)
print(m.groups()[0])
とやると、
path\file
が表示される
期待してるのはfileだけなのに
\の扱いがよく判らん
str = r'\path\file.ext'
m = re.search(r'\\(.+?)\.ext', str)
print(m.groups()[0])
とやると、
path\file
が表示される
期待してるのはfileだけなのに
\の扱いがよく判らん
515デフォルトの名無しさん (アウアウクー MM5d-iMS1)
2023/10/31(火) 10:02:30.01ID:n8WLlcxzM 運営関係者がお気持ち表明してたけど
日本語下手くそか?って思った
日本語下手くそか?って思った
516デフォルトの名無しさん (ワッチョイ eb7b-QDRn)
2023/10/31(火) 11:07:11.92ID:xbZAg47A0 >>514
\というより正規表現自体の話だね。
m = re.search(r'([^\\]*?)\.ext', str)
例題のパターンなら俺ならre.split(r'[\\\.]',str)するかな
\というより正規表現自体の話だね。
m = re.search(r'([^\\]*?)\.ext', str)
例題のパターンなら俺ならre.split(r'[\\\.]',str)するかな
517デフォルトの名無しさん (ワッチョイ 9b68-czOC)
2023/10/31(火) 11:21:19.22ID:UwJuUdWI0 os.path.basename(os.path.splitext(str)[0])
のがポータビリティあるし具体的
ext縛りしたいなら os.path.splitext(str)[1] をみる
正規表現の学習中だったならスルーして
のがポータビリティあるし具体的
ext縛りしたいなら os.path.splitext(str)[1] をみる
正規表現の学習中だったならスルーして
518デフォルトの名無しさん (ワッチョイ 1b01-Nf2/)
2023/10/31(火) 11:45:54.34ID:9f9EtR6w0 pathlibのpath.stemで
linux上でwindows用のpathを処理したいとかじゃなければ
linux上でwindows用のpathを処理したいとかじゃなければ
519デフォルトの名無しさん (ワッチョイ 4954-ybhY)
2023/10/31(火) 12:08:29.70ID:FC+25GL80 現実の解はsplitしたけど
正規表現に\そのものって入れられないの?
正規表現に\そのものって入れられないの?
520デフォルトの名無しさん (スフッ Sd33-wFsA)
2023/10/31(火) 13:02:56.59ID:ZnsUTzemd 馬鹿には無理
521デフォルトの名無しさん (ワッチョイ eb7b-QDRn)
2023/10/31(火) 13:10:09.60ID:xbZAg47A0 >>519
\が使えるから結果が表示されてる。正規表現の解釈が間違っているだけ
左から見ていくからre.search(r'\\(.+?)\.ext', str)だとpathも入る
re.search(r'([^\\]*?)\.ext', str)にすれば.extの直近の\以外の文字範囲になる
\が使えるから結果が表示されてる。正規表現の解釈が間違っているだけ
左から見ていくからre.search(r'\\(.+?)\.ext', str)だとpathも入る
re.search(r'([^\\]*?)\.ext', str)にすれば.extの直近の\以外の文字範囲になる
522デフォルトの名無しさん (ワッチョイ 4954-ybhY)
2023/10/31(火) 13:13:43.57ID:FC+25GL80 .+? が一番短い候補を探してくれる機能は右にしか効かないんだっけ?
523デフォルトの名無しさん (ワッチョイ 1b01-Nf2/)
2023/10/31(火) 14:12:22.23ID:uMAo/1En0 \までをgreedyにマッチさせればいい
re.search(r’.*\\(.+?)\.ext', str)
'\foo.extention\file.ext’みたいなのがあっても困らない
re.search(r’.*\\(.+?)\.ext', str)
'\foo.extention\file.ext’みたいなのがあっても困らない
524デフォルトの名無しさん (ワッチョイ 4954-ybhY)
2023/10/31(火) 14:25:09.92ID:FC+25GL80 .* を足すだけで動いたんだな
右方向にしか探さないというルールを知らずによくこれまでやってこれたものだ
右方向にしか探さないというルールを知らずによくこれまでやってこれたものだ
525デフォルトの名無しさん (ワッチョイ f381-hdhi)
2023/10/31(火) 15:55:39.81ID:cJEQNzhb0 自分もこれ最短一致でいけると思ってた
526デフォルトの名無しさん (ワッチョイ eb89-mMeg)
2023/10/31(火) 18:39:41.68ID:Vsa18tIj0 正規表現できるってマジスゲ
527デフォルトの名無しさん (ワッチョイ 215f-H9h+)
2023/10/31(火) 19:01:40.80ID:hfhrZUTs0 覚えても使う機会がほとんどないからすぐに使い方を忘れる技術筆頭
528デフォルトの名無しさん (テテンテンテン MM8b-7Hus)
2023/10/31(火) 19:10:21.32ID:UOgpZEfIM 普通コンピューター使ってたら検索するだろう
使う機会の問題じゃなくリテラシの問題なんじゃないの
使う機会の問題じゃなくリテラシの問題なんじゃないの
529デフォルトの名無しさん (ワッチョイ 136d-st1D)
2023/10/31(火) 20:39:25.02ID:XhCHDiQs0 最近はAIに作らせてる
530デフォルトの名無しさん (オッペケ Srdd-hdhi)
2023/10/31(火) 21:23:14.85ID:AUqnNKgAr 普通に考えて使う機会が増えれば使い方を忘れることは減るだろう
531デフォルトの名無しさん (テテンテンテン MM8b-7Hus)
2023/10/31(火) 21:26:59.61ID:v/vfxNC4M 機会があって使いどころを解ってないってのがリテラシ低いヤツ
機会がないわけじゃない
機会がないわけじゃない
532デフォルトの名無しさん (ワッチョイ 4954-ybhY)
2023/10/31(火) 21:40:49.77ID:FC+25GL80 pythonは正規表現を極力使うなという設計が見え隠れするけどな
startswithとかendswithとかstripとかでかなりの正規表現は使わなくて済む
一番ありそうなスクレイピングはbs4で何とかする
そうすると特殊な文字列解析をしないといけないケースは限られてきて、
適当なモジュールに追い出せば普段書くコードにimport reは不要になる
startswithとかendswithとかstripとかでかなりの正規表現は使わなくて済む
一番ありそうなスクレイピングはbs4で何とかする
そうすると特殊な文字列解析をしないといけないケースは限られてきて、
適当なモジュールに追い出せば普段書くコードにimport reは不要になる
533デフォルトの名無しさん (オッペケ Srdd-hdhi)
2023/10/31(火) 22:25:00.17ID:hSvVaef5r 使う機会の多い少ないなんか人それぞれだろうにそれをどうしてリテラシの問題にしたがるのか謎
534デフォルトの名無しさん (ワッチョイ 8101-iMS1)
2023/10/31(火) 23:40:18.15ID:nyF8SqcQ0 この業界そういう連中ばっかなのは今に始まったことじゃないでしょ
535デフォルトの名無しさん (テテンテンテン MM8b-eP3M)
2023/11/01(水) 00:00:54.33ID:hFPjhJnyM536デフォルトの名無しさん (ワッチョイ b13d-zW/F)
2023/11/01(水) 16:47:42.46ID:7xIgv3ci0 PyCon APACでDNSクエリを公開する
@mipsparcがそれを指摘する
運営が謝罪
https://pyconjp.blogspot.com/2023/10/pyconapac2023-noc-content.html
何でこれ炎上した上に指摘した人間がツイ消しまでしてんの
@mipsparcがそれを指摘する
運営が謝罪
https://pyconjp.blogspot.com/2023/10/pyconapac2023-noc-content.html
何でこれ炎上した上に指摘した人間がツイ消しまでしてんの
537デフォルトの名無しさん (ワッチョイ b13d-zW/F)
2023/11/01(水) 17:38:35.61ID:7xIgv3ci0 https://nukalumix.hateblo.jp/entry/tsuhi
通信の秘密について解説してるブログ
通信の秘密について解説してるブログ
538デフォルトの名無しさん (アウアウウー Sad5-6ZD3)
2023/11/01(水) 18:46:55.26ID:SK5NEpr2a539デフォルトの名無しさん (ワッチョイ 197b-9em/)
2023/11/02(木) 08:38:38.80ID:8JdTnQ430 犯罪を指摘した人に対して訴訟とか言い出すやつは頭おかしいよ
意図的な漏洩なので刑事罰事案
意図的な漏洩なので刑事罰事案
540デフォルトの名無しさん (ワッチョイ b195-zW/F)
2023/11/02(木) 10:36:45.79ID:VbnyJw9p0 きっかけとなった投稿みつかった
https://twitter.com/KikuchiKoichiro/status/1719714835242566081
>>538
一人が騒ぎ立ててあそこまで炎上させられるのなら、それはそれですごい
https://twitter.com/thejimwatkins
https://twitter.com/KikuchiKoichiro/status/1719714835242566081
>>538
一人が騒ぎ立ててあそこまで炎上させられるのなら、それはそれですごい
https://twitter.com/thejimwatkins
541デフォルトの名無しさん (ワッチョイ b195-zW/F)
2023/11/02(木) 10:43:13.74ID:VbnyJw9p0 というか、投降者の炎上体質は否定しないけど、それ以外にも要素があった?
542デフォルトの名無しさん (ワッチョイ 11f0-6ZD3)
2023/11/02(木) 12:30:17.43ID:obP8ILkg0543デフォルトの名無しさん (ワッチョイ 9b4c-czOC)
2023/11/02(木) 12:41:38.15ID:+5aa8DEY0 これを無視はないでしょ
運営へすぐ連絡してくれる味方が少なかったのが敗因
運営へすぐ連絡してくれる味方が少なかったのが敗因
544デフォルトの名無しさん (ワッチョイ 215f-zW/F)
2023/11/02(木) 12:57:36.33ID:rfHazXJX0 ほーん?
味方が少なかった時点で色々と察してしまうなぁ
味方が少なかった時点で色々と察してしまうなぁ
545デフォルトの名無しさん (ワッチョイ 11f0-6ZD3)
2023/11/02(木) 13:23:22.21ID:obP8ILkg0 PyConってコミュニティっていう感じじゃないのよね
会社に近い
日本で唯一めちゃくちゃ儲かってるし
組織的にやってる
だから対応も組織的になってる
こういう「無敵の人」が暴れた時に弱いよね
会社に近い
日本で唯一めちゃくちゃ儲かってるし
組織的にやってる
だから対応も組織的になってる
こういう「無敵の人」が暴れた時に弱いよね
546デフォルトの名無しさん (ワッチョイ b1f3-zW/F)
2023/11/02(木) 13:47:53.28ID:VbnyJw9p0547デフォルトの名無しさん (ワッチョイ b1f3-zW/F)
2023/11/02(木) 14:04:28.39ID:VbnyJw9p0 PyCon APAC 2023におけるNOCコンテンツに関するご指摘について
https://pyconjp.blogspot.com/2023/11/pyconapac2023-statement.html
発表きたな
https://pyconjp.blogspot.com/2023/11/pyconapac2023-statement.html
発表きたな
548デフォルトの名無しさん (アウアウウー Sad5-6ZD3)
2023/11/02(木) 14:04:44.14ID:opKyr2X/a 無視でいい
少なくとも外野は
運営が気が付かない訳ないんだからな
少なくとも外野は
運営が気が付かない訳ないんだからな
549デフォルトの名無しさん (ワッチョイ b1f3-zW/F)
2023/11/02(木) 14:26:36.15ID:VbnyJw9p0 >>548
>前日の機構変更により、サブドメインを除いたドメイン名のみ表示に変更
指摘されてすぐ行った対応がこれで、明らかに通信の秘密の侵害を認識できてないから
今回外野が騒なかったらこの対応のまま行ってたと思う
>前日の機構変更により、サブドメインを除いたドメイン名のみ表示に変更
指摘されてすぐ行った対応がこれで、明らかに通信の秘密の侵害を認識できてないから
今回外野が騒なかったらこの対応のまま行ってたと思う
550デフォルトの名無しさん (アウアウウー Sad5-6ZD3)
2023/11/02(木) 14:52:54.35ID:opKyr2X/a >>549
通信の秘密の侵害になるか?ははっきり言えないと思われ
弁護士の見解もはっきりしてないし実際は裁判しないと決着がつかない部類のものだよ
特に今回のようなケースはね
外野が騒ぎ立てなければここまでプチ炎上することもなかったのだ
通信の秘密の侵害になるか?ははっきり言えないと思われ
弁護士の見解もはっきりしてないし実際は裁判しないと決着がつかない部類のものだよ
特に今回のようなケースはね
外野が騒ぎ立てなければここまでプチ炎上することもなかったのだ
551デフォルトの名無しさん (ワッチョイ 137e-hdhi)
2023/11/02(木) 15:25:23.77ID:vtDg34mi0552デフォルトの名無しさん (ワッチョイ d16a-ooUb)
2023/11/02(木) 16:40:41.85ID:ORpvM4EQ0 >通信の秘密の侵害になるか?ははっきり言えないと思われ
争いの余地なく明らかな侵害
これで侵害してないとかいいだしたら法律いらない
争えるのは刑事罰の対象者と程度くらい
いい弁護士が見つかるといいね
争いの余地なく明らかな侵害
これで侵害してないとかいいだしたら法律いらない
争えるのは刑事罰の対象者と程度くらい
いい弁護士が見つかるといいね
553デフォルトの名無しさん (ワッチョイ 11f0-6ZD3)
2023/11/02(木) 16:42:58.23ID:obP8ILkg0554デフォルトの名無しさん (ワッチョイ d16a-ooUb)
2023/11/02(木) 16:56:15.37ID:ORpvM4EQ0 脊髄反射ww
よほど都合が悪いんだね
前科付くことになるから仕方ないのかもしれないけど下手な沈静化図ろうとすると逆効果だよ
これ今は警察も見て見ぬふりして動かないかもしれないけどあんまりいい加減なこと言ってると告訴する人出てくるよ
よほど都合が悪いんだね
前科付くことになるから仕方ないのかもしれないけど下手な沈静化図ろうとすると逆効果だよ
これ今は警察も見て見ぬふりして動かないかもしれないけどあんまりいい加減なこと言ってると告訴する人出てくるよ
555デフォルトの名無しさん (ワッチョイ b1f3-zW/F)
2023/11/02(木) 17:26:31.97ID:VbnyJw9p0 さすがにここで通信の秘密について議論するつもりはないわ
556デフォルトの名無しさん (ワッチョイ eb89-mMeg)
2023/11/02(木) 18:16:27.99ID:DKOWPN540 議論したところでなんの生産性もない話題(裁判所の匙加減しだいなので、俺たちに介入する余地は無く無意味なのでは)
557デフォルトの名無しさん (ワッチョイ 137e-hdhi)
2023/11/02(木) 18:49:26.57ID:vtDg34mi0558デフォルトの名無しさん (ワッチョイ b1f3-zW/F)
2023/11/02(木) 20:02:16.98ID:VbnyJw9p0559デフォルトの名無しさん (ワッチョイ 13ac-zW/F)
2023/11/02(木) 22:29:18.46ID:DVTQzfgC0 Pythonの言語の学習におすすめのサイトはありますか?
リファレンス的に使えるHP や ライブラリの使い方のHP
ググれば出ますが、おすすめあれば教えてください。
リファレンス的に使えるHP や ライブラリの使い方のHP
ググれば出ますが、おすすめあれば教えてください。
560デフォルトの名無しさん (ワッチョイ d187-emLV)
2023/11/02(木) 22:35:51.46ID:Z5mhCUTh0 運営に争う姿勢がないから略式起訴で裁判にはならない
あとは警察検察の匙加減
罪を認めてるんなら自首したほうが量刑は軽くなるが誰が自首すべきか判断が難しいところ
責任者一人の首を差し出してもスタッフ全員守れるとは限らないからね
あとは警察検察の匙加減
罪を認めてるんなら自首したほうが量刑は軽くなるが誰が自首すべきか判断が難しいところ
責任者一人の首を差し出してもスタッフ全員守れるとは限らないからね
561デフォルトの名無しさん (アウアウウー Sad5-g+2W)
2023/11/03(金) 08:10:17.46ID:rVBPlXQLa つまりここで騒げば騒ぐほど5chの行く末が危うくなると
だから無視しろと?
だから無視しろと?
562デフォルトの名無しさん (ワッチョイ 295a-9em/)
2023/11/03(金) 12:01:30.37ID:pvnUPuXN0 >>547でDNSクエリを晒した動機に触れてなかったり担当がボランティアだと強調してるあたりに批判を和らげたい意図を感じる
それにコメントに書かれてるようにイベント開始前に指摘があったことや運営関係者が告発者を攻撃していたことが事実なら不法行為に対する償いとは別に組織としての謝罪と処分が必要だろう
それにコメントに書かれてるようにイベント開始前に指摘があったことや運営関係者が告発者を攻撃していたことが事実なら不法行為に対する償いとは別に組織としての謝罪と処分が必要だろう
563デフォルトの名無しさん (ワッチョイ 1346-eG5z)
2023/11/03(金) 14:13:34.80ID:135shnGH0 >>559
docs.python.org/ja/3/tutorial/index.html
docs.python.org/ja/3/tutorial/index.html
564デフォルトの名無しさん (ワッチョイ 6211-lq8Q)
2023/11/05(日) 02:01:03.25ID:SrPBWcHK0 初めてPython触る
VS2022に環境整えたんだけどGUIアプリ作ろうとしても新しいプロジェクトに出てこないんだけどVS2022では作れないってこと?
VS2022に環境整えたんだけどGUIアプリ作ろうとしても新しいプロジェクトに出てこないんだけどVS2022では作れないってこと?
565デフォルトの名無しさん (ワッチョイ 062c-To/i)
2023/11/05(日) 02:32:06.16ID:WVQonGtV0 https://learn.microsoft.com/ja-jp/visualstudio/python/managing-python-projects-in-visual-studio?view=vs-2022
雛形は用意されてない模様
Python用のGUIライブラリを自分で選定して構築する必要がある
ネイティブアプリ書けないから当然なんだけどもVSである必要がほぼないね
雛形は用意されてない模様
Python用のGUIライブラリを自分で選定して構築する必要がある
ネイティブアプリ書けないから当然なんだけどもVSである必要がほぼないね
566デフォルトの名無しさん (ワッチョイ 31a7-lNqW)
2023/11/05(日) 04:19:08.15ID:nQmmBj7n0 tkinterはネイティブじゃないか?
567デフォルトの名無しさん (ワッチョイ 4690-0SSA)
2023/11/05(日) 06:39:11.16ID:GNbgJagA0 >>564
GUIアプリはPythonでも作成ができますが、C#とかで作成した方がいいと思いますよ。
仕事でPythonを使用することが要件であれば仕方ありませんが。(そもそも、そんな要件を出す人はあんまりいないと思うし)
PythonはPythonが得意としていることに使用するのをお勧めします。
GUIアプリはPythonでも作成ができますが、C#とかで作成した方がいいと思いますよ。
仕事でPythonを使用することが要件であれば仕方ありませんが。(そもそも、そんな要件を出す人はあんまりいないと思うし)
PythonはPythonが得意としていることに使用するのをお勧めします。
568デフォルトの名無しさん (ワッチョイ 1949-MfmC)
2023/11/05(日) 07:47:07.85ID:ixjDKXsm0 C#はGUI作成なら一番か
Javaも悪くはない
JavascriptのElectronという手もあるがかさ張る
RustのTauriは良さげだがRustの学習コストが高い
VC++のほうがマシかもな
Javaも悪くはない
JavascriptのElectronという手もあるがかさ張る
RustのTauriは良さげだがRustの学習コストが高い
VC++のほうがマシかもな
569デフォルトの名無しさん (アウアウウー Saa5-CWlg)
2023/11/05(日) 10:19:39.87ID:ol9bMVcca wxPython覚えるとwxWidgetsも使えるようになって
お得ですよ
お得ですよ
570デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/05(日) 10:25:35.56ID:RWNjRicl0 コンソールから何か打ち込んで1行ずつ実行とかやったことないし、
どうせ長いスクリプト書いてる最中に活用なんかできないんだから、
初心者の最初のステップや解説サイト書く人が助かるだけ
そんなの不可能な代わりにコンパイル言語で高速な方が有り難い
どうせ長いスクリプト書いてる最中に活用なんかできないんだから、
初心者の最初のステップや解説サイト書く人が助かるだけ
そんなの不可能な代わりにコンパイル言語で高速な方が有り難い
571デフォルトの名無しさん (テテンテンテン MM26-UiM5)
2023/11/05(日) 11:59:21.94ID:LMwCZi3CM 各々最適があるのだから
好きにすれば良い
押し付けがしく言う必要はない
好きにすれば良い
押し付けがしく言う必要はない
572デフォルトの名無しさん (ワッチョイ 4936-9yVh)
2023/11/05(日) 16:32:32.19ID:NcRV8IfI0 Python/Qtで問題ない。
573デフォルトの名無しさん (ワッチョイ 6dd4-ZTan)
2023/11/05(日) 19:35:21.75ID:i4+JFogG0 PySideでやってるな
触ってる人すくなそうだけどQtQuickの方も触りだした
触ってる人すくなそうだけどQtQuickの方も触りだした
574デフォルトの名無しさん (ワッチョイ 06ad-whAv)
2023/11/06(月) 09:12:57.41ID:tszvNtiA0 jpgファイルをドラッグアンドドロップしたら
処理するってつくりたいんだけど
winだとコマンドプロンプト経由じゃないとダメ?
PYファイルじゃむり?
処理するってつくりたいんだけど
winだとコマンドプロンプト経由じゃないとダメ?
PYファイルじゃむり?
575デフォルトの名無しさん (アウアウウー Saa5-CWlg)
2023/11/06(月) 10:15:00.39ID:48qtdwXca python(。えxぇ)じゃなくて
pythonw(。えxぇ)の方を使う
pythonw(。えxぇ)の方を使う
576デフォルトの名無しさん (ワッチョイ 2e89-cBWW)
2023/11/06(月) 15:06:07.26ID:IA199WY/0 ちんこ痒いの病気かもしれん
577デフォルトの名無しさん (ワッチョイ e95f-ZTan)
2023/11/08(水) 12:54:07.78ID:EPzAmPS60 Pythonは対話型で学習しやすいのでPythonを学ぶというよりはプログラム初学に向いてる
コンパイルせず即実行できるのが便利なだけ…かな
京都大学では1回生の学生向けにプログラムの授業を行ってるが
X=X+1を方程式と勘違いしてこの方程式は間違ってるとかどうやって解くの?という学生が多い
プログラムでは変数として使うという風に説明する。Pythonならたった数行だけでどういうものかわかるのでやはり初学者向けといえる
コンパイルせず即実行できるのが便利なだけ…かな
京都大学では1回生の学生向けにプログラムの授業を行ってるが
X=X+1を方程式と勘違いしてこの方程式は間違ってるとかどうやって解くの?という学生が多い
プログラムでは変数として使うという風に説明する。Pythonならたった数行だけでどういうものかわかるのでやはり初学者向けといえる
578デフォルトの名無しさん (ワッチョイ c551-ZTan)
2023/11/08(水) 13:26:28.57ID:82yhyslz0 =を本来の意味と違う意味で使ってるんだからそりゃ間違ってると思うわな
プログラム言語作ったやつが悪い
プログラム言語作ったやつが悪い
579デフォルトの名無しさん (ワッチョイ 9901-L2tG)
2023/11/08(水) 13:31:21.96ID:M+eAhKpj0 lispのように
(set a 3)
の方がよかったか?
(set a 3)
の方がよかったか?
580デフォルトの名無しさん (アウアウウー Saa5-2ws7)
2023/11/08(水) 13:35:14.32ID:o1wz1QuQa CS知ってればそんな勘違いするはずないんだけどな
数式をメタファーとして用いてるが関数型言語でもない言語は数学とは全く違うってことが理解できてない
CSは中学生から必要
数式をメタファーとして用いてるが関数型言語でもない言語は数学とは全く違うってことが理解できてない
CSは中学生から必要
581デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/08(水) 15:55:32.78ID:0RzzgATi0 >>577
その話題のおかげで久しぶりにPythonを触ってみようという気になった。
例えば2^16倍精度浮動小数点数の最大値を計算するのに、Python3のDecimalではEmaxを最大にしても桁あふれするが、
Mpmathを使う以外にもPython2のDecimalが使える。
そのDecimalの書き方でもともとやっていた書き方よりも短く工夫できた。
その話題のおかげで久しぶりにPythonを触ってみようという気になった。
例えば2^16倍精度浮動小数点数の最大値を計算するのに、Python3のDecimalではEmaxを最大にしても桁あふれするが、
Mpmathを使う以外にもPython2のDecimalが使える。
そのDecimalの書き方でもともとやっていた書き方よりも短く工夫できた。
582デフォルトの名無しさん (ワッチョイ 2e89-cBWW)
2023/11/08(水) 17:45:04.49ID:EFPFqmm90 Incoぽ?ち
583デフォルトの名無しさん (ワッチョイ c261-ubk5)
2023/11/08(水) 22:59:11.98ID:EduYhT2N0 >>574
Ruby で説明すると、
デスクトップにショートカットを作って、
例えば、コマンドプロンプトでRubyを起動するなら、リンク先を以下のように設定する
C:\Windows\System32\cmd@exe /k "ruby C:/Users/Owner/Documents/a.rb"
ただし、@はドットに変えて下さい
コマンドプロンプトを経由しない場合は、
直接Rubyの実行ファイルがある絶対パスを書く
C:\Ruby25-x64\bin\ruby.exe C:/Users/Owner/Documents/a.rb
これで、Drag & Drop したファイルパスが、
a.rb の中で、ARGV[ 0 ] に入ってくる
Ruby で説明すると、
デスクトップにショートカットを作って、
例えば、コマンドプロンプトでRubyを起動するなら、リンク先を以下のように設定する
C:\Windows\System32\cmd@exe /k "ruby C:/Users/Owner/Documents/a.rb"
ただし、@はドットに変えて下さい
コマンドプロンプトを経由しない場合は、
直接Rubyの実行ファイルがある絶対パスを書く
C:\Ruby25-x64\bin\ruby.exe C:/Users/Owner/Documents/a.rb
これで、Drag & Drop したファイルパスが、
a.rb の中で、ARGV[ 0 ] に入ってくる
584デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/08(水) 23:01:59.61ID:rOfRZ5Bf0 Goだと?
585デフォルトの名無しさん (ワッチョイ d2bd-sdYh)
2023/11/08(水) 23:05:05.88ID:hH3k8goZ0 関連?スレか
「京大生でもx=x+1が分からない」、喜多教授が明かすPython教育の実態 ★3 [少考さん★]
http://asahi.5ch.net/test/read.cgi/newsplus/1699429080/
「京大生でもx=x+1が分からない」、喜多教授が明かすPython教育の実態 ★3 [少考さん★]
http://asahi.5ch.net/test/read.cgi/newsplus/1699429080/
586デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/08(水) 23:10:06.00ID:rOfRZ5Bf0 =を等しいという意味だとしても、1+1=2を無批判に受け入れるのはおかしい
1+1=1+1は正しい
1+1と2は明らかに違うもの
1+1=1+1は正しい
1+1と2は明らかに違うもの
587デフォルトの名無しさん (スプッッ Sdc2-9iD6)
2023/11/08(水) 23:26:13.31ID:HvIjZsS8d Python世界だともう少しややこしく
確か256以下は同じになるんじゃなかった?
2=1+1は正しい
2000=1000+1000は間違い
とかなんとか
確か256以下は同じになるんじゃなかった?
2=1+1は正しい
2000=1000+1000は間違い
とかなんとか
588デフォルトの名無しさん (ワッチョイ 8905-xu6s)
2023/11/08(水) 23:29:18.59ID:lU2++3tG0 やはりPythonでも代入は:=にすべきだったな
589デフォルトの名無しさん (オイコラミネオ MM75-H91/)
2023/11/09(木) 05:37:23.81ID:u7A0OM5bM590デフォルトの名無しさん (オイコラミネオ MM75-H91/)
2023/11/09(木) 05:40:30.95ID:u7A0OM5bM >>585
分からないんじゃなくて知らないだけだな
分からないんじゃなくて知らないだけだな
591デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/09(木) 07:11:40.89ID:i4b+P9OO0 =使わずに:=だけ使っても書ける?
592デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/09(木) 07:14:51.81ID:i4b+P9OO0 書けないな
ifの中に無いとSyntaxErrorになる
ifの中にあっても無くてもよくて代入結果が評価可能になるだけ、という演算子でも良かったのに
ifの中に無いとSyntaxErrorになる
ifの中にあっても無くてもよくて代入結果が評価可能になるだけ、という演算子でも良かったのに
593デフォルトの名無しさん (ワッチョイ 0954-MVD/)
2023/11/09(木) 10:07:00.20ID:Wk14M+OK0 >>586
そんなもん文脈次第であって何も注釈がなければ式の値で比較するのが普通だろうよ
そんなもん文脈次第であって何も注釈がなければ式の値で比較するのが普通だろうよ
594デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/09(木) 10:38:26.14ID:i4b+P9OO0 1+1=2を習う時点で批判的思考ができる奴は少ないので、
こうなんだと言われたらそうなんだと丸呑みしてるだけ
そのまま現在に至る
こうなんだと言われたらそうなんだと丸呑みしてるだけ
そのまま現在に至る
595デフォルトの名無しさん (ワッチョイ 0954-MVD/)
2023/11/09(木) 10:46:29.67ID:Wk14M+OK0 偉そうな事言ってるだけでなんの反論にもなってない
596デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/09(木) 10:47:28.47ID:i4b+P9OO0 反論?
教導だよ
教導だよ
597デフォルトの名無しさん (ワッチョイ 0954-MVD/)
2023/11/09(木) 10:56:43.22ID:Wk14M+OK0 偉そうな事言ってるだけでなんの教導にもなってない
598デフォルトの名無しさん (ワッチョイ c218-dElW)
2023/11/09(木) 11:37:06.85ID:gopD44tH0 x=x+1くらいは1度説明したらすぐわかるやろ
学生よりも京大の教授がこのレベルというのが衝撃的
日本が沈没するわけだわ
学生よりも京大の教授がこのレベルというのが衝撃的
日本が沈没するわけだわ
599デフォルトの名無しさん (アウアウウー Saa5-CWlg)
2023/11/09(木) 12:09:23.93ID:Fo7n9qIpa 単に記号の問題なので
x := x + 1
でも
x :~ x + 1
でも
x <- x + 1
でも
x ← x + 1
でもなんでも良い
手間がかからないのが
x = x + 1
それだけ
x := x + 1
でも
x :~ x + 1
でも
x <- x + 1
でも
x ← x + 1
でもなんでも良い
手間がかからないのが
x = x + 1
それだけ
600デフォルトの名無しさん (アウアウウー Saa5-CWlg)
2023/11/09(木) 12:10:16.09ID:Fo7n9qIpa601デフォルトの名無しさん (ワッチョイ 0954-MVD/)
2023/11/09(木) 12:18:15.60ID:Wk14M+OK0602デフォルトの名無しさん (ワッチョイ e1f0-2ws7)
2023/11/09(木) 12:49:40.60ID:Nh0igmG80 guido氏が来るぞ
https://pyconjp.connpass.com/event/301716/
https://pyconjp.connpass.com/event/301716/
603デフォルトの名無しさん (アウアウウー Saa5-CWlg)
2023/11/09(木) 13:11:26.45ID:Fo7n9qIpa >>602
灯台ωωω
灯台ωωω
604デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/09(木) 13:15:59.83ID:i4b+P9OO0 代入が := で、比較が == なのに、= も使う言語がある
= も比較で、文字列の大文字小文字を無視するという違いがある
= も比較で、文字列の大文字小文字を無視するという違いがある
605デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 14:24:11.67ID:iUBVM1B70 >>602
PyPyの例えば2.7.13ではDecimalで桁数が10^10^5程度まで数値が扱える(最大値は不明)が、
Python3のDecimalでは桁数が999999999999999999までしか数値が扱えない。
この点を今後どうするのか聞いてほしいな。
PyPyの例えば2.7.13ではDecimalで桁数が10^10^5程度まで数値が扱える(最大値は不明)が、
Python3のDecimalでは桁数が999999999999999999までしか数値が扱えない。
この点を今後どうするのか聞いてほしいな。
606デフォルトの名無しさん (ワッチョイ 0954-MVD/)
2023/11/09(木) 14:53:50.44ID:Wk14M+OK0 ID:Fo7n9qIpaもID:i4b+P9OO0も話を放りだしちゃったな
607デフォルトの名無しさん (アウアウウー Saa5-CWlg)
2023/11/09(木) 15:02:43.48ID:Fo7n9qIpa import decimal
decimal.getcontext().prec = 15
decimal.getcontext().prec = 15
608デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 15:11:21.88ID:iUBVM1B70 とりあえずPython3でもMpmathでprecを巨大にすれば巨大数が扱えて誤差は出ないようだが、
検算にPython3のMpmath、計算にPyPy2.7.13のDecimalを使っている。
環境が異なるために1つのプログラムで検算までできないという問題点がある。
ちなみに2^128倍精度浮動小数点数の最大値の計算をするときには、
PyPy2.7.13のDecimalではprecを1000に、Python3のMpmathではprecを10000とか100000とかにしないと誤差が出る。
検算にPython3のMpmath、計算にPyPy2.7.13のDecimalを使っている。
環境が異なるために1つのプログラムで検算までできないという問題点がある。
ちなみに2^128倍精度浮動小数点数の最大値の計算をするときには、
PyPy2.7.13のDecimalではprecを1000に、Python3のMpmathではprecを10000とか100000とかにしないと誤差が出る。
609デフォルトの名無しさん (ワッチョイ 0954-MVD/)
2023/11/09(木) 15:14:41.36ID:Wk14M+OK0610デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 15:21:06.86ID:iUBVM1B70611デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 15:31:52.00ID:iUBVM1B70 python3では
getcontext().prec = 1000
getcontext().Emax = 999999999999999999
まで、
PyPy2.7.13では
getcontext().prec = 1000
getcontext().Emax = 10**10**5
程度まで、Emaxを10**10**6にするとエラーになる。
getcontext().prec = 1000
getcontext().Emax = 999999999999999999
まで、
PyPy2.7.13では
getcontext().prec = 1000
getcontext().Emax = 10**10**5
程度まで、Emaxを10**10**6にするとエラーになる。
612デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 15:54:04.12ID:iUBVM1B70 mpmathでprecが1000での実行結果
2023-11-09 15:40:37.341115
8.693707727864259530039258884770161044063845806590697696822196758051010321507084364738474185393716049143428269592664416299506985821607020...
e+258313751232903212140244172706732768962283773495639777019746650509389263410185892774365178070439343470463409842392677007886631633129570799399839688363235723
2023-11-09 15:40:37.821113
0:00:00.479998
mpmathでprecが100での実行結果
2023-11-09 15:40:42.917141
1.73874154557285190600785177695403220881276916131813953936443935161020206430141687294769483707874321
e+258313751232903212140244172706732768962283773495639777019746650509389263410185892774365178070439343470463409842392677007886631633129570799399839688363235724
2023-11-09 15:40:42.969102
0:00:00.051961
precが100だと明らかに誤差がある。これも問題。
前者は先頭から100桁程度までと桁数は正確なのを確認している。
2023-11-09 15:40:37.341115
8.693707727864259530039258884770161044063845806590697696822196758051010321507084364738474185393716049143428269592664416299506985821607020...
e+258313751232903212140244172706732768962283773495639777019746650509389263410185892774365178070439343470463409842392677007886631633129570799399839688363235723
2023-11-09 15:40:37.821113
0:00:00.479998
mpmathでprecが100での実行結果
2023-11-09 15:40:42.917141
1.73874154557285190600785177695403220881276916131813953936443935161020206430141687294769483707874321
e+258313751232903212140244172706732768962283773495639777019746650509389263410185892774365178070439343470463409842392677007886631633129570799399839688363235724
2023-11-09 15:40:42.969102
0:00:00.051961
precが100だと明らかに誤差がある。これも問題。
前者は先頭から100桁程度までと桁数は正確なのを確認している。
613デフォルトの名無しさん (アウアウウー Saa5-CWlg)
2023/11/09(木) 16:07:17.61ID:Fo7n9qIpa614デフォルトの名無しさん (ワッチョイ 0954-MVD/)
2023/11/09(木) 16:16:09.89ID:Wk14M+OK0615デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 16:16:32.99ID:iUBVM1B70 >>602
PyPyのDecimalの誤差の問題は言いにくいが、Python3のDecimalの桁数限界の問題は言っても良さそうだよな。
Python3で動くMpmathの誤差の問題についても言っていいのかな?
Pythonの計算能力は非常に高いので高く評価できる。そのことも言っておきたい。
あとMSのVscodeからダウンロードできるPythonではいまだに3.10が使われているが、なぜまだ3.11や3.12にならないのか?も。
PyPyのDecimalの誤差の問題は言いにくいが、Python3のDecimalの桁数限界の問題は言っても良さそうだよな。
Python3で動くMpmathの誤差の問題についても言っていいのかな?
Pythonの計算能力は非常に高いので高く評価できる。そのことも言っておきたい。
あとMSのVscodeからダウンロードできるPythonではいまだに3.10が使われているが、なぜまだ3.11や3.12にならないのか?も。
616デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 16:33:36.64ID:iUBVM1B70 こういう計算ではprecを大きくしないと誤差が出る。
また、2^16倍精度浮動小数点数の最大値あたりから桁数が999999999999999999を超えてしまいPython3のDecimalではオーバーフローする。
https://ideone.com/B7quXx
2^256倍精度浮動小数点数の最大値は計算してみたが、2^512倍精度浮動小数点数の最大値は未確認。
また、2^16倍精度浮動小数点数の最大値あたりから桁数が999999999999999999を超えてしまいPython3のDecimalではオーバーフローする。
https://ideone.com/B7quXx
2^256倍精度浮動小数点数の最大値は計算してみたが、2^512倍精度浮動小数点数の最大値は未確認。
617デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 18:53:31.64ID:iUBVM1B70 Python2のDecimalのEmaxの最大値はたぶん10**999999
https://paiza.io/projects/_3oy4rG43bzr-zUb-bO3CQ
これを超えてもエラーすら出ないが計算結果も出ないのでたぶん最大値。
https://paiza.io/projects/_3oy4rG43bzr-zUb-bO3CQ
これを超えてもエラーすら出ないが計算結果も出ないのでたぶん最大値。
618デフォルトの名無しさん (ワッチョイ 4910-ZTan)
2023/11/09(木) 18:54:46.14ID:iUBVM1B70 書くのが面倒くさいので10の指数表現にしてしまったので、実際にはもっと大きいかも?
619デフォルトの名無しさん (ワッチョイ 02ea-TR5P)
2023/11/10(金) 15:53:55.15ID:5sYei61M0 >>585
xなんか使うからややこしいだけでnum=num+1にしたら誰でもわかる
xなんか使うからややこしいだけでnum=num+1にしたら誰でもわかる
620デフォルトの名無しさん (ワッチョイ 2e46-tR/v)
2023/11/10(金) 16:33:17.33ID:FbH8Mxce0 ヌムって何
621デフォルトの名無しさん (ワッチョイ fd54-EDsj)
2023/11/10(金) 19:08:35.02ID:smhSXpZ/0 変数か定数かにざっくり2種類に分かれるので、
xとかvarならいいけど、numと書いてしまうとそれは定数
xとかvarならいいけど、numと書いてしまうとそれは定数
622あぼーん
NGNGあぼーん
623デフォルトの名無しさん (ワッチョイ 1f01-qIOU)
2023/11/11(土) 10:26:25.79ID:HDC3RNtv0 >>622
こういう方法もあるんだな
こういう方法もあるんだな
624デフォルトの名無しさん (ワッチョイ 1f27-xIya)
2023/11/13(月) 22:27:11.06ID:V0ByRftD0 paths = list(Path('/content/drive/MyDrive/StableDiffusion/').glob(r'*.*'))
paths.sort(key=os.path.getmtime, reverse=True)
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
というプログラムで、フォルダ内の画像を作成日時順にソートできたのですが、
ここの中から上位10個を取り出してそれぞれ関数に入れたいのですが、
どのような手法でやったらいいのでしょうか?
(例:001.png→data1,002.png→data2へのような形にしたいのです。)
よろしくお願いします。
paths.sort(key=os.path.getmtime, reverse=True)
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
というプログラムで、フォルダ内の画像を作成日時順にソートできたのですが、
ここの中から上位10個を取り出してそれぞれ関数に入れたいのですが、
どのような手法でやったらいいのでしょうか?
(例:001.png→data1,002.png→data2へのような形にしたいのです。)
よろしくお願いします。
625デフォルトの名無しさん (ワッチョイ ff30-hgj4)
2023/11/13(月) 23:08:29.99ID:hIb2N2Ge0 >>624
https://docs.python.org/ja/3/library/stdtypes.html#list.sort
ソート載ってたこの文書にスライスってのがあるのでそれで取り出しはできる
端から公式文書に目を通すつもりないならChatGPTさんに聞くのもいいよ
https://docs.python.org/ja/3/library/stdtypes.html#list.sort
ソート載ってたこの文書にスライスってのがあるのでそれで取り出しはできる
端から公式文書に目を通すつもりないならChatGPTさんに聞くのもいいよ
626デフォルトの名無しさん (ワッチョイ 1f27-xIya)
2023/11/14(火) 00:03:28.13ID:3XtDLzP+0627デフォルトの名無しさん (ワッチョイ 7f19-qIOU)
2023/11/14(火) 00:35:16.33ID:c91qDKwg0 >>622
コスパ良いポイ活だな
コスパ良いポイ活だな
628デフォルトの名無しさん (ワッチョイ 1f01-vgtH)
2023/11/14(火) 00:44:14.40ID:eAuNTGnN0 こいつ自演レス2回やるようになったんだな
以前は1回だった
以前は1回だった
629デフォルトの名無しさん (テテンテンテン MM4f-9Nvu)
2023/11/14(火) 01:34:46.08ID:KAjgCxWWM >>624
画像ファイルを関数に入れるってどういう意味?
画像ファイルを関数に入れるってどういう意味?
630デフォルトの名無しさん (ワッチョイ 9f54-NzoM)
2023/11/14(火) 09:59:04.47ID:POS4QBLh0 スライスはpython入門の1時間目でやるだろ
631デフォルトの名無しさん (ワッチョイ 1fa7-uZuc)
2023/11/14(火) 12:04:58.19ID:a6f/tVQx0632デフォルトの名無しさん (ワッチョイ 9f7c-gFzT)
2023/11/14(火) 19:06:35.65ID:xujXPfzz0 >>631
画像のバイナリを関数に渡すって考える方が普通じゃ?
画像のバイナリを関数に渡すって考える方が普通じゃ?
633デフォルトの名無しさん (ワッチョイ 9f54-NzoM)
2023/11/14(火) 19:12:22.18ID:POS4QBLh0 そんなアホな取り回しはせんやろ
634デフォルトの名無しさん (ワッチョイ 7f5c-wD1F)
2023/11/14(火) 20:05:40.30ID:lvDQJ2KR0 ワロタw
635デフォルトの名無しさん (JP 0H4f-9Nvu)
2023/11/15(水) 08:14:14.82ID:PY3kt1RSH そもそも10個の関数を順番に呼び出す仕組みがPythonにはないよね
636デフォルトの名無しさん (ワッチョイ 9f54-NzoM)
2023/11/15(水) 08:38:19.84ID:+heJlrgN0 >>624に書いてある、data1というのは関数名なのか
命名のセンスが悪い
命名のセンスが悪い
637デフォルトの名無しさん (ワッチョイ 9f46-uMtu)
2023/11/15(水) 10:00:41.77ID:4ca/PT+K0638デフォルトの名無しさん (ワッチョイ ff89-Xl/w)
2023/11/15(水) 11:08:40.78ID:t2csacDc0639デフォルトの名無しさん (ワッチョイ 9f54-NzoM)
2023/11/15(水) 11:11:13.85ID:+heJlrgN0 似たような関数が並んでるなら引数でどうにかするし、
全然違うのならテーブルで並べるか、シーケンシャルに書いちゃうか
全部画像を処理するんだから、似てると思うけど
全然違うのならテーブルで並べるか、シーケンシャルに書いちゃうか
全部画像を処理するんだから、似てると思うけど
640デフォルトの名無しさん (JP 0H4f-9Nvu)
2023/11/15(水) 15:31:22.25ID:PY3kt1RSH641デフォルトの名無しさん (ワッチョイ 1ff0-Gf4c)
2023/11/15(水) 15:38:36.15ID:/tSVEj7/0 そんなことする必要ないことに気がついてくれ
642デフォルトの名無しさん (ワッチョイ ffce-hgj4)
2023/11/15(水) 15:44:53.45ID:VGv7kGCa0 仮にやりたいって話でしょ
Pythonは関数もファーストクラスだから余裕
Pythonは関数もファーストクラスだから余裕
643デフォルトの名無しさん (スプッッ Sd1f-bSx2)
2023/11/15(水) 17:45:49.81ID:olanfxkjd # 超適当に答えてみる
def data1(path):
pass
paths = ["path1.txt","path2.txt","path3.txt",]
datas = [data1,data2,data3,]
# こっちはべた書き
data1(paths[0])
data2(paths[1])
data3(paths[2])
# こっちはグルグル
for data,path in zip(datas,paths):
data(path)
def data1(path):
pass
paths = ["path1.txt","path2.txt","path3.txt",]
datas = [data1,data2,data3,]
# こっちはべた書き
data1(paths[0])
data2(paths[1])
data3(paths[2])
# こっちはグルグル
for data,path in zip(datas,paths):
data(path)
644デフォルトの名無しさん (ワッチョイ 1f79-oqYz)
2023/11/15(水) 20:01:43.64ID:qjPY1w3P0 配列定義する手間で全部書けるだろなにがしたいんだ
645デフォルトの名無しさん (ワッチョイ 1f27-XI6K)
2023/11/15(水) 21:38:54.96ID:SiUAlBQI0 >>629-643
624です。
Lineを使ってStableDiffutionで作成した画像をソートして作成日時が新しいもの10個を自分用に送り付ける方法を考えてました。
んで、関数の話としては>>643のべた書きが近く・・・というかまんまで、文字通りべた書きで10回処理を行いそれぞれ別関数へ突っ込んでます。
本当はもっといい処理方法あると思いまが、あまりプログラム系は触ったことがなく、自分でできる範囲で最適化するつもりです。
>>629 の画像ファイルを関数に入れるに関しては、
im1 = Image.open(data)
という処理を別でやっており、10枚の画像ファイルを、2列5行の画像ファイルで書き出して送信するするつもりです。(ランダムで10枚を1枚にしてLineに送る処理はできたので・・)
LINE NotifyやLineAPIを叩いても、複数画像をまとめて送る手法がなかったので、1つの画像で送る方法をとっています。
で、そのプログラムですが以下のようになってます。
(Google Colabで実行)
from pathlib import Path
import os
paths = list(Path('/content/drive/MyDrive/StableDiffusion/').glob(r'*.*'))
paths.sort(key=os.path.getmtime, reverse=True)
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
print (paths.sort)
l_reversed = paths[0::-1]
l2_reversed = paths[1::-2]
l3_reversed = paths[2::-3]
print (l_reversed)
print (l2_reversed)
print (l3_reversed)
このプログラムでソートした上から3つを取り出せたのですがいかがでしょうか。
また、
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
の処理があまりよくわかっていないのですが、
これは、for file in pathsでフォルダ指定したフォルダ内の全ファイルに対して、{file.stat().st_mtime:.0f} で更新日、{file.name}でファイル名の表示で会っていますでしょうか。
それか、ほかにもっとスマートな手法ありますでしょうか。 よろしくお願いします。
624です。
Lineを使ってStableDiffutionで作成した画像をソートして作成日時が新しいもの10個を自分用に送り付ける方法を考えてました。
んで、関数の話としては>>643のべた書きが近く・・・というかまんまで、文字通りべた書きで10回処理を行いそれぞれ別関数へ突っ込んでます。
本当はもっといい処理方法あると思いまが、あまりプログラム系は触ったことがなく、自分でできる範囲で最適化するつもりです。
>>629 の画像ファイルを関数に入れるに関しては、
im1 = Image.open(data)
という処理を別でやっており、10枚の画像ファイルを、2列5行の画像ファイルで書き出して送信するするつもりです。(ランダムで10枚を1枚にしてLineに送る処理はできたので・・)
LINE NotifyやLineAPIを叩いても、複数画像をまとめて送る手法がなかったので、1つの画像で送る方法をとっています。
で、そのプログラムですが以下のようになってます。
(Google Colabで実行)
from pathlib import Path
import os
paths = list(Path('/content/drive/MyDrive/StableDiffusion/').glob(r'*.*'))
paths.sort(key=os.path.getmtime, reverse=True)
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
print (paths.sort)
l_reversed = paths[0::-1]
l2_reversed = paths[1::-2]
l3_reversed = paths[2::-3]
print (l_reversed)
print (l2_reversed)
print (l3_reversed)
このプログラムでソートした上から3つを取り出せたのですがいかがでしょうか。
また、
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
の処理があまりよくわかっていないのですが、
これは、for file in pathsでフォルダ指定したフォルダ内の全ファイルに対して、{file.stat().st_mtime:.0f} で更新日、{file.name}でファイル名の表示で会っていますでしょうか。
それか、ほかにもっとスマートな手法ありますでしょうか。 よろしくお願いします。
646デフォルトの名無しさん (ワッチョイ fff0-fgGr)
2023/11/16(木) 00:51:14.98ID:Q2M7jM7u0 たぶんやりたいことはこんなかんじだろ
for i in range(10):
eval("data" +i)(paths[i])
for i in range(10):
eval("data" +i)(paths[i])
647デフォルトの名無しさん (ワッチョイ ff89-Xl/w)
2023/11/16(木) 01:17:55.83ID:YpHIXhGK0 >>645
from pathlib import Path
import os
paths = list(Path('/content/drive/MyDrive/StableDiffusion/').glob(r'*.*'))
paths.sort(key=os.path.getmtime, reverse=True)
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
print (paths.sort)
l_reversed = paths[0::-1] <- ここと同様に似た部分は重複処理なので値の変化量を保存する処理にするともっと良くなるかも
l2_reversed = paths[1::-2]
l3_reversed = paths[2::-3]
print (l_reversed)
print (l2_reversed)
print (l3_reversed)
from pathlib import Path
import os
paths = list(Path('/content/drive/MyDrive/StableDiffusion/').glob(r'*.*'))
paths.sort(key=os.path.getmtime, reverse=True)
for file in paths:
print(f'{file.stat().st_mtime:.0f} {file.name}')
print (paths.sort)
l_reversed = paths[0::-1] <- ここと同様に似た部分は重複処理なので値の変化量を保存する処理にするともっと良くなるかも
l2_reversed = paths[1::-2]
l3_reversed = paths[2::-3]
print (l_reversed)
print (l2_reversed)
print (l3_reversed)
648デフォルトの名無しさん (アウアウウー Sae3-Xzxn)
2023/11/16(木) 10:39:16.68ID:QXdh7keCa print (l_reversed)
print (l2_reversed)
print (l3_reversed)
かっこわるい
print (l2_reversed)
print (l3_reversed)
かっこわるい
649デフォルトの名無しさん (スプッッ Sd1f-bSx2)
2023/11/16(木) 11:03:41.52ID:pvCpT+Yld もしかして、
「関数」じゃなくて「変数」だったり?
「関数」じゃなくて「変数」だったり?
650デフォルトの名無しさん (ワッチョイ ffce-hgj4)
2023/11/16(木) 13:24:54.46ID:eCSrCCxs0651デフォルトの名無しさん (スプッッ Sd1f-7z1d)
2023/11/16(木) 17:03:02.71ID:1QM1kixjd l_reversed = paths[0::-1]
l2_reversed = paths[1::-2]
l3_reversed = paths[2::-3]
こんな書き方してるのに
> ランダムで10枚を1枚にしてLineに送る処理はできたので
ここまで辿り着けたのがすげぇ
ランダムのソースコード(I/F部分だけでも)を貼ったら、答えがすぐ返ってくると思う
他の部分もめちゃくちゃ言われるだろうけど、そっちはお勉強ということで
l2_reversed = paths[1::-2]
l3_reversed = paths[2::-3]
こんな書き方してるのに
> ランダムで10枚を1枚にしてLineに送る処理はできたので
ここまで辿り着けたのがすげぇ
ランダムのソースコード(I/F部分だけでも)を貼ったら、答えがすぐ返ってくると思う
他の部分もめちゃくちゃ言われるだろうけど、そっちはお勉強ということで
652デフォルトの名無しさん (ワッチョイ ff7b-zK++)
2023/11/16(木) 17:12:01.88ID:KD9PIbB20 このプログラム系の知識感でAPI叩いてるってのが逆にすごい。
653デフォルトの名無しさん (ワッチョイ 1f8a-vmna)
2023/11/17(金) 00:14:30.55ID:7IofKhtq0 subprocessとsubprocess.PIPEを1行でimportする方法ってある?
654デフォルトの名無しさん (ワッチョイ ff7b-zK++)
2023/11/17(金) 09:10:23.93ID:40Zys+6x0 import subprocess; from subprocess import PIPE て事ではなく?
655デフォルトの名無しさん (アウアウウー Sae3-OPKY)
2023/11/17(金) 10:18:44.46ID:BqbQlbW7a inport subprocess
だけでよくね?
だけでよくね?
656デフォルトの名無しさん (ワッチョイ ff46-uMtu)
2023/11/17(金) 11:02:23.16ID:HkmKeaDT0 >>655
許せない。。
>>> inport subprocess
File "<stdin>", line 1
inport subprocess
^
SyntaxError: invalid syntax
>>>
許せない。。
>>> inport subprocess
File "<stdin>", line 1
inport subprocess
^
SyntaxError: invalid syntax
>>>
657デフォルトの名無しさん (スプッッ Sd7f-Xzxn)
2023/11/17(金) 11:28:45.83ID:180/RciHd もちつけ
>>> import subprocess
>>> print(subprocess)
<module 'subprocess' from '.../subprocess.py'>
>>> print(subprocess.PIPE)
-1
>>> import subprocess
>>> print(subprocess)
<module 'subprocess' from '.../subprocess.py'>
>>> print(subprocess.PIPE)
-1
658デフォルトの名無しさん (ワッチョイ 1fb1-u6Hu)
2023/11/17(金) 13:19:32.60ID:FFgkWy7J0 使えなくなるまで
os.system()を使います><。
os.system()を使います><。
659デフォルトの名無しさん (ワッチョイ ff7f-vmna)
2023/11/17(金) 15:17:29.47ID:Y0aXBNXC0660デフォルトの名無しさん (ワッチョイ ff63-kIyz)
2023/11/17(金) 22:22:21.30ID:i6SiN6NQ0661659ではない (ワッチョイ 6e46-eNDp)
2023/11/18(土) 03:49:04.58ID:0Uy+05Nv0 >>660
import subprocess {self as sp, PIPE as spp}
みたいにして、subprocessとsubprocess.PIPE各々を別名にして、1ステートメントでimportする方法ってある?
import subprocess {self as sp, PIPE as spp}
みたいにして、subprocessとsubprocess.PIPE各々を別名にして、1ステートメントでimportする方法ってある?
662デフォルトの名無しさん (JP 0H66-ue97)
2023/11/18(土) 07:14:32.15ID:kMLLK9REH >>661
無理でしょ
subprocess に別名を付けるには import
subprocess.PIPE に別名を付けるには from import
import と from import は別の構文だから並べられない
無理でしょ
subprocess に別名を付けるには import
subprocess.PIPE に別名を付けるには from import
import と from import は別の構文だから並べられない
663デフォルトの名無しさん (ワッチョイ 6e63-Cy+q)
2023/11/18(土) 08:04:12.74ID:Kfn2l2LH0 可読性を犠牲にしてまで1行にこだわるのかが謎だ
664デフォルトの名無しさん (アウアウウー Sa85-UHOz)
2023/11/18(土) 17:02:58.33ID:rXJKESWNa from subprocess import *
665デフォルトの名無しさん (ワッチョイ 6e46-4xZ8)
2023/11/18(土) 17:19:32.77ID:gr23gvrO0666デフォルトの名無しさん (ワッチョイ 8690-tE+F)
2023/11/18(土) 20:47:54.52ID:fIOteNuc0667661 (ワッチョイ 6e46-4xZ8)
2023/11/18(土) 21:57:39.08ID:gr23gvrO0668デフォルトの名無しさん (ワッチョイ 29b1-ettz)
2023/11/18(土) 22:09:39.15ID:2M9ZJit40 昔パールを初めてやってた時
open($fp,"/bin/ls | ") || die 'cant open /bin/ls';
while(<$fp>){
print;
}
close($fp);
これスゲーって思った。
コマンドをパイプつきでオープンして、while文で読み込むって。
でもパールはダメだ、見切りを付けてpythonに移った。
久し振りすぎて、上の書くのも苦労したww
open($fp,"/bin/ls | ") || die 'cant open /bin/ls';
while(<$fp>){
print;
}
close($fp);
これスゲーって思った。
コマンドをパイプつきでオープンして、while文で読み込むって。
でもパールはダメだ、見切りを付けてpythonに移った。
久し振りすぎて、上の書くのも苦労したww
669デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/18(土) 22:57:41.75ID:STIOjWGd0 pythonでも似たようなことやるがな
670デフォルトの名無しさん (ワッチョイ 29b1-ettz)
2023/11/18(土) 23:18:59.79ID:2M9ZJit40 え、できるの?知らんかった。
671デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/18(土) 23:26:44.76ID:STIOjWGd0 話題のsubprocess.PIPEにstdoutを流す
672デフォルトの名無しさん (ワッチョイ 29b1-ettz)
2023/11/19(日) 00:05:14.88ID:B+HVId7D0 まあ、そりゃそうだけど。
perl の open()関数でコマンド起動してファイルを読み込むのと同じ仕様で書けるって
力技感一杯じゃんw
perl の open()関数でコマンド起動してファイルを読み込むのと同じ仕様で書けるって
力技感一杯じゃんw
673デフォルトの名無しさん (ワッチョイ 6e63-Cy+q)
2023/11/19(日) 02:07:38.68ID:S9/JwIsQ0 >>667
最初、改行文字の節約って思ったけど、
セミコロン+スペースと変わらんもんなぁ
LFなら改行のほうが少ないし
pythonは行あたり80文字という一応の目安を文書化した言語だから、
改行に抵抗がない人が多そうだけど、そうでもないのかな?
最初、改行文字の節約って思ったけど、
セミコロン+スペースと変わらんもんなぁ
LFなら改行のほうが少ないし
pythonは行あたり80文字という一応の目安を文書化した言語だから、
改行に抵抗がない人が多そうだけど、そうでもないのかな?
674デフォルトの名無しさん (ワッチョイ 6e46-4xZ8)
2023/11/19(日) 07:30:36.55ID:vAXGDL640 >>673
敢えて利点を挙げるなら、
import urllib2.{Amodule, Bmodule} # Rust風?
と書ければ、キーワードが集約されるので、
import urllib2.Amodule
import urllib.Bmodule # 「2」字脱落
みたいな片ちんばな誤記にならない。
from urllib import Bmodule と誤記して、Bmodule.same_function() を呼ぶと、
urllib2 の関数を扱っているつもりが、実は
urllib を使用していたという、自分では解りにくいミスになるかも。
なまじ Amodule はマトモなので、思い込みに泣く。
敢えて利点を挙げるなら、
import urllib2.{Amodule, Bmodule} # Rust風?
と書ければ、キーワードが集約されるので、
import urllib2.Amodule
import urllib.Bmodule # 「2」字脱落
みたいな片ちんばな誤記にならない。
from urllib import Bmodule と誤記して、Bmodule.same_function() を呼ぶと、
urllib2 の関数を扱っているつもりが、実は
urllib を使用していたという、自分では解りにくいミスになるかも。
なまじ Amodule はマトモなので、思い込みに泣く。
675デフォルトの名無しさん (アウアウウー Sa85-UHOz)
2023/11/19(日) 12:19:59.30ID:/G2k3fWta >>667 観て造った
>>653
https://paiza.io/projects/kIZMaC_GHS4Albu4tapOTQ
def rust(mod, names):
globals()[mod] = __import__(mod)
for n in names:
globals()[n] = getattr(__import__(mod, globals(), locals(), [n], 0), n)
rust('subprocess', ['PIPE', 'STDOUT'])
print(dir(subprocess))
print(PIPE)
print(STDOUT)
>>653
https://paiza.io/projects/kIZMaC_GHS4Albu4tapOTQ
def rust(mod, names):
globals()[mod] = __import__(mod)
for n in names:
globals()[n] = getattr(__import__(mod, globals(), locals(), [n], 0), n)
rust('subprocess', ['PIPE', 'STDOUT'])
print(dir(subprocess))
print(PIPE)
print(STDOUT)
676デフォルトの名無しさん (ワッチョイ fe95-fy5B)
2023/11/19(日) 16:33:07.78ID:oPb7CqgG0 >>675
ネタだとしてもサブパッケージ等対応出来てないものがいくつかあるので却下ですね
ネタだとしてもサブパッケージ等対応出来てないものがいくつかあるので却下ですね
677デフォルトの名無しさん (ワッチョイ ae4d-8oJ/)
2023/11/19(日) 16:51:15.74ID:j9gIHEdT0 DAOデザインパターンのセッションオブジェクトって
どこで持つべき?
ロジッククラス?それともセッション管理クラスを新しく作る?
それともDAOの中でセッション張る?
どこで持つべき?
ロジッククラス?それともセッション管理クラスを新しく作る?
それともDAOの中でセッション張る?
678デフォルトの名無しさん (ワッチョイ 2927-Y9g+)
2023/11/19(日) 22:43:20.36ID:9EvVoZ760 >>647-652
いろいろ教えていただきありがとうございました。
646です。
>>650 さんが行ってるように関数じゃなくて、変数ですね・・・勘違いしてました。申し訳ない。
必要に駆られてプログラム書いてたので、コピペと
なんかほしい感じのやり方+APIとかのサンプルプログラムを見てポチポチ書いてた感じです。
>>648 さんの書いたプログラムで上から10個選択できたのでこれで自分なりに最適化をしていこうと思います。
>>652 さんが言ってた、ランダム選択のプログラムは以下の通りです。
file_path = './img/'
file = glob.glob("./img/*")
data =random.choice(file)
こいつでimgファイル内のどれか1つの画像を選ばせてます。
(ほぼコピペです)
また、l_reversed = paths[0::-1] で[0::-1]を[1::-2]のようにすると
ソート順で表示する画像が1つずれるのはちょっと理由がわからないのですが、
理屈を教えていただけないでしょうか。
よろしくお願いします。
いろいろ教えていただきありがとうございました。
646です。
>>650 さんが行ってるように関数じゃなくて、変数ですね・・・勘違いしてました。申し訳ない。
必要に駆られてプログラム書いてたので、コピペと
なんかほしい感じのやり方+APIとかのサンプルプログラムを見てポチポチ書いてた感じです。
>>648 さんの書いたプログラムで上から10個選択できたのでこれで自分なりに最適化をしていこうと思います。
>>652 さんが言ってた、ランダム選択のプログラムは以下の通りです。
file_path = './img/'
file = glob.glob("./img/*")
data =random.choice(file)
こいつでimgファイル内のどれか1つの画像を選ばせてます。
(ほぼコピペです)
また、l_reversed = paths[0::-1] で[0::-1]を[1::-2]のようにすると
ソート順で表示する画像が1つずれるのはちょっと理由がわからないのですが、
理屈を教えていただけないでしょうか。
よろしくお願いします。
679デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/19(日) 22:59:46.66ID:uFm9+T2V0 アンカーどうなっとんねん
680デフォルトの名無しさん (ワッチョイ 6e7b-QUH3)
2023/11/20(月) 09:06:45.18ID:RnUiirN00 >>678
とりあえず配列の使い方を勉強したほうがいい
とりあえず配列の使い方を勉強したほうがいい
681デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
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使った方が描き易くね
Python使った方が描き易くね
683デフォルトの名無しさん (スフッ Sd22-Y9g+)
2023/11/20(月) 15:38:29.00ID:DbfyuSYxd すまん、アンカーつけミスってた
684デフォルトの名無しさん (スプッッ Sd82-OPfZ)
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個だけにする
あと、最適化とかスマートとか気にするレベルじゃない
(なんで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個だけにする
あと、最適化とかスマートとか気にするレベルじゃない
685デフォルトの名無しさん (ワッチョイ 427c-hO6y)
2023/11/20(月) 21:11:58.82ID:uCxOj8y10 Excelの散布図で近似曲線の数式(y=ax+bみたいなの)をすぐ表示できるけど、
plotnineのstat_smooth関数使うときに同じ感じでサクッと表示する方法ないですかね?
plotnineのstat_smooth関数使うときに同じ感じでサクッと表示する方法ないですかね?
686デフォルトの名無しさん (ワッチョイ 2927-Y9g+)
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]でべた書きすればいいということですよね?
初歩的なことですいません・・・(-_-;)
ありがとうございます。
検証したら確かに
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]でべた書きすればいいということですよね?
初歩的なことですいません・・・(-_-;)
687デフォルトの名無しさん (ワッチョイ 2927-Y9g+)
2023/11/20(月) 22:34:48.05ID:QThOiYWP0 >>684
やん・・・またアンカーミスった(;´д`)
やん・・・またアンカーミスった(;´д`)
688デフォルトの名無しさん (スプッッ Sd82-OPfZ)
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
公式ドキュメントのチュートリアルの最初の方に書いてある
チュートリアルくらいは、一度目を通してくれ
https://docs.python.org/ja/3/tutorial/index.html
https://docs.python.org/ja/3/tutorial/introduction.html#lists
689デフォルトの名無しさん (ワッチョイ 6e89-JCfw)
2023/11/20(月) 23:55:15.19ID:7M4T/4JK0690デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/21(火) 08:23:09.96ID:LcVKgP510 チュートリアルには
from urllib.request import urlopen
が書いてあるけど、
import requests
の方がいいよな
from urllib.request import urlopen
が書いてあるけど、
import requests
の方がいいよな
691デフォルトの名無しさん (ワッチョイ b130-/Wmb)
2023/11/21(火) 09:32:55.38ID:OtSZp9c+0 チュートリアルなんだから、PyPIその他サードパーティモジュールの使い方について学ぶ段階に進む前は、標準モジュールのみで話を進めねば
692デフォルトの名無しさん (ワッチョイ 6e7b-QUH3)
2023/11/21(火) 10:04:19.49ID:QDAC0gh80693デフォルトの名無しさん (ワッチョイ ae68-6Q50)
2023/11/21(火) 12:16:17.16ID:0aCdJNBJ0694デフォルトの名無しさん (ワッチョイ 6e7b-QUH3)
2023/11/21(火) 12:50:42.41ID:QDAC0gh80 どんな言語でも最初はhello worldと相場が決まっている
695デフォルトの名無しさん (ワッチョイ 6e46-4xZ8)
2023/11/21(火) 15:20:50.52ID:aUIDxCId0696デフォルトの名無しさん (アウアウウー Sa85-LQE0)
2023/11/21(火) 15:26:30.08ID:Vub9wpCBa697デフォルトの名無しさん (アウアウウー Sa85-LQE0)
2023/11/21(火) 15:35:40.89ID:Vub9wpCBa inputという関数があるんだ、それは入力を受け取る関数なんだ、じゃなくて
標準入力(キーボード)から入力する方法があるはずだ、それはpythonではinput関数なんだ
こういう発想でやらないとコードなんていつまでも書けんぞ
この思考でやれば他の言語の時も脳の負荷が少ない
俺はこれを抽象的仮説思考と読んでいる
標準入力(キーボード)から入力する方法があるはずだ、それはpythonではinput関数なんだ
こういう発想でやらないとコードなんていつまでも書けんぞ
この思考でやれば他の言語の時も脳の負荷が少ない
俺はこれを抽象的仮説思考と読んでいる
698デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/21(火) 15:41:58.36ID:LcVKgP510 普通に使ってたらinput()なんか使わんやろ
実行を一時停止する時に使うくらい
実行を一時停止する時に使うくらい
699デフォルトの名無しさん (アウアウウー Sa85-LQE0)
2023/11/21(火) 15:59:34.91ID:Vub9wpCBa んなアホなw
700695 (ワッチョイ 6e46-4xZ8)
2023/11/21(火) 16:01:38.28ID:aUIDxCId0701デフォルトの名無しさん (JP 0H66-F30J)
2023/11/21(火) 16:15:26.01ID:is7gJ9QfH AI使い出すとやりたいこと書けばサンプルコード吐いてくれて、更にそれを発展させることも出来てしまうから、なんかアイデアだけで給料貰ってる感じがする
これからはコード書けるとか、ここでやり取りしてるような知識では飯食えんな
これからはコード書けるとか、ここでやり取りしてるような知識では飯食えんな
702デフォルトの名無しさん (ワッチョイ 6e89-JCfw)
2023/11/21(火) 17:03:35.20ID:YwWuHKsv0 オンラインじゃない現場なんてクソあるから
飯は食えるけど、サクッと合意形成とサクッと試作品とサクッと検証するまでがセットにならないと開発者としては落ち目
飯は食えるけど、サクッと合意形成とサクッと試作品とサクッと検証するまでがセットにならないと開発者としては落ち目
703デフォルトの名無しさん (ワッチョイ 6e89-JCfw)
2023/11/21(火) 17:05:25.01ID:YwWuHKsv0 インターネット接続できない場所もあるからね
704デフォルトの名無しさん (ワッチョイ 91ae-YW6P)
2023/11/21(火) 19:33:06.81ID:KWbYnmSX0 >>697
>標準入力(キーボード)から入力する方法があるはずだ、それはpythonではinput関数なんだ
必要に迫られてキーボード入力の方法を探してればそうなるし、そういう場面がなければ
>inputという関数があるんだ、それは入力を受け取る関数なんだ
になる
そんだけの話
>標準入力(キーボード)から入力する方法があるはずだ、それはpythonではinput関数なんだ
必要に迫られてキーボード入力の方法を探してればそうなるし、そういう場面がなければ
>inputという関数があるんだ、それは入力を受け取る関数なんだ
になる
そんだけの話
705デフォルトの名無しさん (ワッチョイ 29b1-ettz)
2023/11/21(火) 22:11:07.25ID:YnWTOShJ0 input()ってデバッグの時に使うな。
ある条件の時の結果を見たい時、input()入れておいて一旦プログラムを止めて結果を見る。
ある条件の時の結果を見たい時、input()入れておいて一旦プログラムを止めて結果を見る。
706デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/21(火) 22:29:10.41ID:LcVKgP510 まあ、普通は止まっても何も嬉しくないけど、seleniumでブラウザが動いてる時は、
止めて観察しないと作れない
止めて観察しないと作れない
707デフォルトの名無しさん (ワッチョイ e9a6-fy5B)
2023/11/21(火) 22:32:29.50ID:x0TxAGsF0 ブレイクポイントの使い方を覚えようか
708デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/21(火) 22:49:08.88ID:MyNMYruR0 >>705
Visual Studio Codeでデバッガ使えよ
Visual Studio Codeでデバッガ使えよ
709デフォルトの名無しさん (ワッチョイ cd67-4Kip)
2023/11/21(火) 22:58:06.32ID:ilvvGzSI0 これはまた珍しい人だな
710デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/21(火) 23:04:11.72ID:MyNMYruR0 まさかプレーンなエディタ使って書いてる?
マジで生産性ゼロだからやめとけ
マジで生産性ゼロだからやめとけ
711デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/21(火) 23:32:04.01ID:LcVKgP510 何で書いても変わらんよ
712デフォルトの名無しさん (ワッチョイ 9d56-bMQn)
2023/11/21(火) 23:47:12.00ID:W0YnhLkK0 俺は初めATOM使ってたわ
色んなパッケージ組み合わせて使いやすい環境にして楽しんでたけど、会社でvscode使ってみたらスゴすぎて速攻移行したw
色んなパッケージ組み合わせて使いやすい環境にして楽しんでたけど、会社でvscode使ってみたらスゴすぎて速攻移行したw
713デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 00:17:21.38ID:F4GGzYS90 素人はVScode一択だ
エラーとか事前に全部チェックしてくれるし
型がないからそこまで有効ではないが補完もボチボチ
あとデバッガもある
組み込みのデバッガは癖があるので使いにくいしね
いい時代になったもんだ
昔はemacsかvimでゴリゴリカスタマイズするか
IntelliJみたいな有料IDE使うしかなかった
エラーとか事前に全部チェックしてくれるし
型がないからそこまで有効ではないが補完もボチボチ
あとデバッガもある
組み込みのデバッガは癖があるので使いにくいしね
いい時代になったもんだ
昔はemacsかvimでゴリゴリカスタマイズするか
IntelliJみたいな有料IDE使うしかなかった
714デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 00:18:44.29ID:F4GGzYS90715デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 00:19:14.06ID:F4GGzYS90 素人さんでもそれなりのレベルに引き上げてくれる
使わない手はない
使わない手はない
716デフォルトの名無しさん (JP 0H66-ue97)
2023/11/22(水) 02:19:33.89ID:1zch1/igH717デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 03:23:40.39ID:F4GGzYS90 >>716
VSCodeはたいして覚えなくても良い
拡張だけ入れとけば勝手にやってくれる
他のIDEに比べたら劇的に簡単だから使ってみろ
ちょっとずつ覚えれば良い
多分VSCodeは代わりがないから
今後10年レベルで使うことになるからとっとと入れよ
VSCodeはたいして覚えなくても良い
拡張だけ入れとけば勝手にやってくれる
他のIDEに比べたら劇的に簡単だから使ってみろ
ちょっとずつ覚えれば良い
多分VSCodeは代わりがないから
今後10年レベルで使うことになるからとっとと入れよ
718デフォルトの名無しさん (ワッチョイ f93d-kqwo)
2023/11/22(水) 03:24:46.57ID:dB+b5h5a0 VSCODEは慣れたら最強だが
プラグイン増え過ぎでそれを使いこなせてる人でないと敷居が高いともw
spyderはちょっと重い
idleは軽くて使い易いがanacondaのトップに無いからだんだん使わなくなる
サクラエディタ、terapad、notepad++あたりはちょっと開いて確認、修正するくらいなら使うか
エディタではないが
jupyter各種も勉強という意味では良い
プラグイン増え過ぎでそれを使いこなせてる人でないと敷居が高いともw
spyderはちょっと重い
idleは軽くて使い易いがanacondaのトップに無いからだんだん使わなくなる
サクラエディタ、terapad、notepad++あたりはちょっと開いて確認、修正するくらいなら使うか
エディタではないが
jupyter各種も勉強という意味では良い
719デフォルトの名無しさん (ワッチョイ f93d-kqwo)
2023/11/22(水) 03:30:31.61ID:dB+b5h5a0 VSCODEも開いて書いて実行するの環境設定に一瞬だけだが手間が掛かるから超初心者は「どうやるんだろう」
で時間が掛かる
ググればいいけどな
でも開発に8GBメモリのPCが与えられる職場だと厳しいか
で時間が掛かる
ググればいいけどな
でも開発に8GBメモリのPCが与えられる職場だと厳しいか
720デフォルトの名無しさん (ワッチョイ aefe-8oJ/)
2023/11/22(水) 07:28:28.99ID:eWaPk4Ti0 VSCodeで難しいとか言ってたら
eclipse見たら発狂するぞ
eclipse見たら発狂するぞ
721デフォルトの名無しさん (ワッチョイ 2968-F30J)
2023/11/22(水) 07:40:33.97ID:xMRvBf/x0 まぁ情報収集にここを使うくらいの知識レベルなんだから何事も難しいのは仕方ない
722デフォルトの名無しさん (JP 0H66-ue97)
2023/11/22(水) 07:40:36.14ID:1zch1/igH 一回だけVSCode入れてみたことあるんだけど
設定メニューがへんてこなXML風で、これは習得コストが高いと思って断念した
設定メニューがへんてこなXML風で、これは習得コストが高いと思って断念した
723デフォルトの名無しさん (ワッチョイ 9d56-bMQn)
2023/11/22(水) 09:06:57.79ID:Xn5wjfcn0724デフォルトの名無しさん (ワッチョイ 6e46-4xZ8)
2023/11/22(水) 09:09:31.67ID:O2r9KWkp0 結局これ↓
> 組み込みのデバッガは癖があるので使いにくいしね
で充分と、個人的には思う。gdb と似たコマンド体系だし。
> 組み込みのデバッガは癖があるので使いにくいしね
で充分と、個人的には思う。gdb と似たコマンド体系だし。
725デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 09:11:14.45ID:DreVDkFV0 他人に使わせるツールとか作ると判るけど、
手間の大半はメイン部分じゃなくてUI部分なんだよな
設定ファイルエディタを各自作る羽目になる
手間の大半はメイン部分じゃなくてUI部分なんだよな
設定ファイルエディタを各自作る羽目になる
726デフォルトの名無しさん (ワッチョイ a155-YW6P)
2023/11/22(水) 09:45:45.64ID:LokQ4a0j0727デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 09:49:49.84ID:DreVDkFV0 configparserで読み込むiniは人間が書く用だけど、
xmlやjsonは人間に触らせたら駄目な気がする
読めるというだけで矛盾なく編集するのは無理
xmlやjsonは人間に触らせたら駄目な気がする
読めるというだけで矛盾なく編集するのは無理
728デフォルトの名無しさん (ワッチョイ a155-YW6P)
2023/11/22(水) 10:44:12.45ID:LokQ4a0j0 vscodeは設定ファイルにもコード補完や型チェックが効くのよ
729デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 12:07:57.61ID:F4GGzYS90730デフォルトの名無しさん (ワッチョイ 6e89-JCfw)
2023/11/22(水) 13:02:58.88ID:2R+eTKz90 XMLは最高のGUI定義ツールなので扱える方が良い。
AndroidスマホもXMLでOSのスタイルを定義している。
覚えるというよりは、扱いに慣れておくと良い。
ソフトウェアエンジニアならそれくらい出来て当然。
AndroidスマホもXMLでOSのスタイルを定義している。
覚えるというよりは、扱いに慣れておくと良い。
ソフトウェアエンジニアならそれくらい出来て当然。
731デフォルトの名無しさん (ワッチョイ 4643-J/gz)
2023/11/22(水) 13:38:46.84ID:bouDYTS90 そういう話なのか
スキーマがないJSONもXMLは滅んでくれなら分かるが
スキーマがないJSONもXMLは滅んでくれなら分かるが
732デフォルトの名無しさん (アウアウウー Sa85-LQE0)
2023/11/22(水) 13:57:34.26ID:J37I1a5Va いやそれ黒歴史だから
今やXMLを陽に出してるのはほとんどない
裏のフォーマットとして存在してるだけだし
しかもGUIは全部HTMLで作るのが主流になって完全なオワコンになった
今やXMLを陽に出してるのはほとんどない
裏のフォーマットとして存在してるだけだし
しかもGUIは全部HTMLで作るのが主流になって完全なオワコンになった
733デフォルトの名無しさん (アウアウウー Sa85-LQE0)
2023/11/22(水) 13:59:53.66ID:J37I1a5Va もちろん当時の時代背景を考えればXML採用は自然だった
2000年ぐらいはXMLの大ブームが来て
(今思えばあのブームはマイクロソフトが恣意的に作ったものだった?)
全てをXMLにしようという動きがあったから仕方ないけど
2000年ぐらいはXMLの大ブームが来て
(今思えばあのブームはマイクロソフトが恣意的に作ったものだった?)
全てをXMLにしようという動きがあったから仕方ないけど
734デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 14:12:19.15ID:DreVDkFV0 xlsxファイルを展開してxmlを手で修正してxlsxに戻す、とかやってたな
excelのバグでデータ壊れるのに直す気が無い
excelのバグでデータ壊れるのに直す気が無い
735デフォルトの名無しさん (アウアウウー Sa85-LQE0)
2023/11/22(水) 14:20:39.43ID:J37I1a5Va736デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 14:26:19.12ID:DreVDkFV0 excelついでに
巨大なxlsxファイルを出力するのってどうやっても異様に遅いけど、
高速化する手段無いよね
データ入力して解析して出力データ作って、までは一瞬なのに、
xlsx形式への変換だけで延々と待たされる
巨大なxlsxファイルを出力するのってどうやっても異様に遅いけど、
高速化する手段無いよね
データ入力して解析して出力データ作って、までは一瞬なのに、
xlsx形式への変換だけで延々と待たされる
737デフォルトの名無しさん (ワッチョイ 6e7b-QUH3)
2023/11/22(水) 14:49:22.81ID:QuV+YjRV0 内容によるしpythonで完結しないけどcsvで出してエクセルで読み込むとかどう?
738デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 15:49:36.79ID:DreVDkFV0 複数シートあるからcsv使えないんだよな
バラでやるという方法もあるけど、手作業が入るくらいなら一晩放置の方がいい
バラでやるという方法もあるけど、手作業が入るくらいなら一晩放置の方がいい
739デフォルトの名無しさん (ワッチョイ 4510-1eGe)
2023/11/22(水) 16:23:45.37ID:IUnPDzEi0 xlsbではどうだろうか?
740デフォルトの名無しさん (ワッチョイ aecc-fy5B)
2023/11/22(水) 16:44:32.44ID:xdLBQuj30741デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 16:50:36.69ID:DreVDkFV0 openpyxlだけど、それしかなくない
742デフォルトの名無しさん (ワッチョイ 6e7b-QUH3)
2023/11/22(水) 16:57:18.94ID:QuV+YjRV0743デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 17:10:10.92ID:DreVDkFV0 おお、試してみよう
機能も多そう
機能も多そう
744デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 17:28:52.18ID:F4GGzYS90 実験屋はデータをエクセルそのまま渡したがるのだけど
マジでやめてほしい
マジでやめてほしい
745デフォルトの名無しさん (ワッチョイ 4643-J/gz)
2023/11/22(水) 17:53:44.07ID:bouDYTS90 でもJupyterのノートブックしか受け付けません、とはならんし
Excelで情報渡すなら範囲に名前定義したり
データのみシートに分離するのが至極当然であることを伝えよう
Excelで情報渡すなら範囲に名前定義したり
データのみシートに分離するのが至極当然であることを伝えよう
746デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 17:57:45.73ID:F4GGzYS90 openpyxlでそのままパースできるからいいじゃんと言われてぐうの音も出ない
747デフォルトの名無しさん (ワッチョイ ae68-6Q50)
2023/11/22(水) 19:19:26.29ID:B4K5aofh0 独学でPythonマスターできますか?
オツムは関関同立理系レベルでふ
オツムは関関同立理系レベルでふ
748デフォルトの名無しさん (ワッチョイ ae68-6Q50)
2023/11/22(水) 20:13:17.88ID:B4K5aofh0 すみませんやっぱり諦めます
749デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/22(水) 20:14:43.45ID:F4GGzYS90 諦めたらそこで試合終了だよ
750デフォルトの名無しさん (ワッチョイ 9140-jMfl)
2023/11/22(水) 21:31:30.57ID:Rzk2Qyuv0 VBA使う方が楽
できるだけPythonでやりたくても、インプットがexcelファイルである以上ある程度は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:eWaPk4Ti0754デフォルトの名無しさん (ワッチョイ f932-Oqke)
2023/11/22(水) 23:13:13.90ID:rqdHSTy50 手書きするなら圧倒的にJSONの方がXMLよりいい
YAMLは文脈依存文法な感じがしんどい、とかいってPython使ってて何言ってんだって感じだけど、
pythonに慣れてなかったころの敬遠する感覚を思い出す
YAMLは文脈依存文法な感じがしんどい、とかいってPython使ってて何言ってんだって感じだけど、
pythonに慣れてなかったころの敬遠する感覚を思い出す
755デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
2023/11/22(水) 23:22:58.96ID:DreVDkFV0 形式なんか何でもいい
そんなもんを手書きさせるのが間違い
内部データを保存するのにバイナリよりシリアライズしたテキストの方がよっぽど素性がいいというだけ
そんなもんを手書きさせるのが間違い
内部データを保存するのにバイナリよりシリアライズしたテキストの方がよっぽど素性がいいというだけ
756デフォルトの名無しさん (アウアウエー Sa0a-bKrX)
2023/11/22(水) 23:25:03.35ID:BN/HxvkXa yamlの中にjson書いちまえよ
757デフォルトの名無しさん (ワッチョイ cd00-YW6P)
2023/11/23(木) 00:25:25.41ID:6RfeBRcn0758デフォルトの名無しさん (アウアウウー Sa85-UHOz)
2023/11/23(木) 10:14:43.85ID:mHKDjshta759デフォルトの名無しさん (アウアウウー 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エンジニアとしてアドバンテージ取るには何できたらいいですか?
pythonエンジニアとしてアドバンテージ取るには何できたらいいですか?
761デフォルトの名無しさん (ワッチョイ 5d54-fbAv)
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 開発環境に凝るのは誰もが通る道だろ
764デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/23(木) 13:29:38.82ID:M3SMKrV50 今はVSCodeで良くなったしな
docker使えばOSの差もない
つまんない時代よ
docker使えばOSの差もない
つまんない時代よ
765デフォルトの名無しさん (ワッチョイ 6ecf-ekUX)
2023/11/23(木) 13:31:59.61ID:9np+Rtrn0 pythonでできることといっても多岐にわたるから差をつけられないってことはないだろう。
pythonの使い方だけで差をつけようと思ってもそりゃ無理だが。
pythonの使い方だけで差をつけようと思ってもそりゃ無理だが。
766デフォルトの名無しさん (ワッチョイ c1f0-LQE0)
2023/11/23(木) 13:34:08.79ID:M3SMKrV50 速度を除けば大抵のことができるからね
これほどライブラリが揃ってる言語は歴史的に見てもない
これほどライブラリが揃ってる言語は歴史的に見てもない
767デフォルトの名無しさん (ワッチョイ 220a-YW6P)
2023/11/23(木) 14:34:59.54ID:flwx+3WQ0768デフォルトの名無しさん (ワッチョイ 4657-J2Wu)
2023/11/24(金) 16:53:48.87ID:YbIXxF2c0 今からPython勉強するのにJupyterLabじゃなくnotebook使うメリットはありますか?
769デフォルトの名無しさん (ワッチョイ 8716-pENz)
2023/11/25(土) 20:04:58.86ID:dphqiFMy0 ちょっと古いnotebook(6系)ならjupyter-contrib-nbextensionsが優秀だからアリ
7系だとJupyterLabを使わないとnbextensions相当のことができなくてなし、かな個人的には
scratchpadないのは厳しい
7系だとJupyterLabを使わないとnbextensions相当のことができなくてなし、かな個人的には
scratchpadないのは厳しい
770デフォルトの名無しさん (ワッチョイ bf4f-YW7b)
2023/11/26(日) 06:37:33.73ID:/ewoALlR0 使える機能拡張に違いがあるということか
学習系の動画見てると候補が出てくるのが便利だな何かなと思っていたがそれなのね
ありがとう参考にするわ
学習系の動画見てると候補が出てくるのが便利だな何かなと思っていたがそれなのね
ありがとう参考にするわ
771デフォルトの名無しさん (ワッチョイ e754-9mH+)
2023/11/26(日) 08:57:43.58ID:svIGcsZy0 メモ帳をエディタとして使う話かと思った
772デフォルトの名無しさん (ワッチョイ 6746-xL6i)
2023/11/26(日) 09:41:10.75ID:YklbHXOm0 notepad と terapad しか無い環境で、頑張った思い出...
773デフォルトの名無しさん (ワッチョイ bf02-nvjM)
2023/11/26(日) 11:25:49.02ID:+Jpfh5lQ0774デフォルトの名無しさん (ワッチョイ e754-9mH+)
2023/11/26(日) 11:35:13.55ID:svIGcsZy0 ダウンロードも禁止だよ
775デフォルトの名無しさん (ワッチョイ bf7d-tUT+)
2023/11/26(日) 15:06:58.60ID:sYav70q40 プログラミング勉強始める人にオススメ聞かれたら公式のPythonとVSCode一択かな
776デフォルトの名無しさん (ワッチョイ bf91-eApT)
2023/11/27(月) 01:03:26.27ID:ggQuSpTQ0 Python では転職できない。
企業は理系で大学院数学科か、AWS 機械学習資格を持っていない香具師を雇わない
ウェブ開発で転職できるのは、Ruby on Rails のみ
例えば、YouTube の女子大生のかよちんは、
Railsの初心者で就職して、
1年後に、Django の会社に転職した
YouTubeで有名な雑食系エンジニア・KENTA は、
初心者のキャリアパスは、Rails → Go だけと言ってる
企業は理系で大学院数学科か、AWS 機械学習資格を持っていない香具師を雇わない
ウェブ開発で転職できるのは、Ruby on Rails のみ
例えば、YouTube の女子大生のかよちんは、
Railsの初心者で就職して、
1年後に、Django の会社に転職した
YouTubeで有名な雑食系エンジニア・KENTA は、
初心者のキャリアパスは、Rails → Go だけと言ってる
777デフォルトの名無しさん (ワッチョイ e754-9mH+)
2023/11/27(月) 01:15:42.85ID:Q/UdWWa/0 googleの奴隷になる覚悟があるならGoで就職するのもありだろう
RoRの需要は減る一方なので、それで仕事を見つけても同時に次を探さないと早晩食い詰める
pythonができますと言ってもそのくらいは当たり前なので、
pythonで何ができますまで無いと仕事には結びつかない
セキュリティ、ビッグデータ、人工知能あたりが不足してる
RoRの需要は減る一方なので、それで仕事を見つけても同時に次を探さないと早晩食い詰める
pythonができますと言ってもそのくらいは当たり前なので、
pythonで何ができますまで無いと仕事には結びつかない
セキュリティ、ビッグデータ、人工知能あたりが不足してる
778デフォルトの名無しさん (ワッチョイ a76a-1fOb)
2023/11/27(月) 19:07:42.88ID:HA2WCtFh0 chatGPTに得意な言語聞くと
「Python」と返答したので
Pythonでいいだろう
Python知ってると
どの分野に行ったとしても
パソコン使う仕事の時に手っ取り早く自動化できる
Python知ってれば他の言語は使わないだろう
「Python」と返答したので
Pythonでいいだろう
Python知ってると
どの分野に行ったとしても
パソコン使う仕事の時に手っ取り早く自動化できる
Python知ってれば他の言語は使わないだろう
779デフォルトの名無しさん (ワッチョイ e754-9mH+)
2023/11/27(月) 19:28:02.33ID:Q/UdWWa/0 perl覚えた時も、これあればずっと困らないかもと思ってた
C言語は今でも普通に使ってる
あいつ何なんだ
C言語は今でも普通に使ってる
あいつ何なんだ
780デフォルトの名無しさん (ワッチョイ a76a-1fOb)
2023/11/27(月) 20:07:30.10ID:HA2WCtFh0 学生の時、Cとjava勉強して基本情報処理をC言語で取ったが
python使うようになってから家ではpythonしか使わない
でも、、今まで勉強した言語の中で唯一
一冊も本を買っていない
python使うようになってから家ではpythonしか使わない
でも、、今まで勉強した言語の中で唯一
一冊も本を買っていない
781デフォルトの名無しさん (ワッチョイ 07b1-YQgT)
2023/11/27(月) 22:31:56.55ID:XZyg9nsC0 C++ ってC++17 C++20 C++23 ってばんばん規格が更新されるじゃん。
もう付いていけてないw
最終的にはpythonみたいに書きたいんじゃね?って思うw 違うかw
もう付いていけてないw
最終的にはpythonみたいに書きたいんじゃね?って思うw 違うかw
782デフォルトの名無しさん (ワッチョイ 8701-OYus)
2023/11/27(月) 23:07:27.83ID:58wAMQmG0 c#も毎年のようにバージョン上がってるけどそんな話にはならん
783デフォルトの名無しさん (ワッチョイ c781-1+JT)
2023/11/27(月) 23:14:46.03ID:jksiOuqq0 CとJavaScriptもPythonじゃ置き換われん
784デフォルトの名無しさん (ワッチョイ c7a7-K6nu)
2023/11/28(火) 00:43:20.23ID:tbHgY5Ye0 辞書に値入れるとき、キー名とバリューの変数名が同じならキー名だけでよいって仕様にならんかなぁ…
785デフォルトの名無しさん (ワッチョイ 47f0-5Z4W)
2023/11/28(火) 01:19:34.65ID:5v5wYsOr0 そんなJSみたいなクソ仕様は入れない
786デフォルトの名無しさん (ワッチョイ c7a7-K6nu)
2023/11/28(火) 06:44:20.72ID:tbHgY5Ye0787デフォルトの名無しさん (JP 0H8f-EFbn)
2023/11/28(火) 07:17:14.41ID:khx6ZkglH Javaは厳格すぎるしJavaScriptは緩すぎる
Pythonが一番バランスがいい
Pythonが一番バランスがいい
788デフォルトの名無しさん (ワッチョイ e754-9mH+)
2023/11/28(火) 07:45:02.70ID:Qmk7LgpZ0 それsetを使うべきなのでは
789デフォルトの名無しさん (ワッチョイ c781-1+JT)
2023/11/28(火) 07:55:42.57ID:fKkgRK0i0790デフォルトの名無しさん (スプッッ Sdff-RH8I)
2023/11/28(火) 08:10:19.81ID:kRkdmaFgd 変数名とか関数名とか
動的に取得されたりすると
難読化で不具合出るんよな。。。
動的に取得されたりすると
難読化で不具合出るんよな。。。
791デフォルトの名無しさん (ワッチョイ bf02-nvjM)
2023/11/28(火) 08:12:46.13ID:iKFapkLZ0 難読化するつもりがあるのなら
Pythonなんて真っ先に除外する対象じゃね?
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"}
と、常に同じという意味なの?
え?
dic1 = {"a":"abc", "b":"bc", "c":"c"}
と、キーバリューの同じ場合があるのでなく、
dic1 = {"a":"a", "b":"b", "c":"c"}
と、常に同じという意味なの?
793デフォルトの名無しさん (ワッチョイ 7fcf-PvcI)
2023/11/28(火) 08:20:01.05ID:VgOmfrQ10 >>788
キーと変数名が同じで中の値自体は別
キーと変数名が同じで中の値自体は別
794デフォルトの名無しさん (アウアウウー Sa0b-6V65)
2023/11/28(火) 08:35:12.55ID:t7+ip2Xga795デフォルトの名無しさん (アウアウウー 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}
って描けるんだよ
そうじゃなくて
a = "abc"
b = "bc"
c = "c"
ってのがあるときに
dic1 = {"a":a, "b":b, "c":c}
は面倒だろ
dic1 = {a, b, c}
って描けるんだよ
796デフォルトの名無しさん (ワッチョイ e754-9mH+)
2023/11/28(火) 08:42:59.96ID:Qmk7LgpZ0 確かに、keyと変数名が同じことはよくあるな
クラスのメンバ名と変数名もよく揃ってる
def __init__ (self, なんやら):
self.なんやら = なんやら
なんで同じこと3回も言うねん
クラスのメンバ名と変数名もよく揃ってる
def __init__ (self, なんやら):
self.なんやら = なんやら
なんで同じこと3回も言うねん
797デフォルトの名無しさん (アウアウウー Sa0b-6V65)
2023/11/28(火) 09:26:56.20ID:t7+ip2Xga def __init__ (self, **kwargs):
self.kwargs = kwargs
これでもまだ冗長に観える
self.kwargs = kwargs
これでもまだ冗長に観える
798デフォルトの名無しさん (ワッチョイ 7f89-cyOh)
2023/11/28(火) 11:52:54.06ID:rFxrbgTI0 それだとキーワード引数が複数個ある場合の使い方とアンパックして中の値を使いたいかの目的が多重化している
799デフォルトの名無しさん (ワッチョイ 7f89-cyOh)
2023/11/28(火) 11:55:42.65ID:rFxrbgTI0 具体的にわかりやすく書いてくれたから容易に、思いつく。
800デフォルトの名無しさん (ワッチョイ e754-9mH+)
2023/11/28(火) 12:01:56.55ID:Qmk7LgpZ0 print(f'なんやら={なんやら}')
が
print(f'なんやら=')
に省略可能なのと同じ規則で、
self.なんやら =
だけで終わると補完される
危険すぎる
が
print(f'なんやら=')
に省略可能なのと同じ規則で、
self.なんやら =
だけで終わると補完される
危険すぎる
801デフォルトの名無しさん (アウアウウー Sa0b-6V65)
2023/11/28(火) 20:50:42.09ID:HOP5xTToa 技術的選択というのは最終的には必ずトレードオフになるので
ある選択のプラス面だけしか見ない/考えない/認識できないやつは何やらせてもダメ
ある選択のプラス面だけしか見ない/考えない/認識できないやつは何やらせてもダメ
802デフォルトの名無しさん (ブモー MMcf-0mLX)
2023/11/28(火) 21:24:12.74ID:hiFSE4Z1M 欲しい理由が書くのが面倒とかって時点でな
803デフォルトの名無しさん (ワッチョイ 7f5d-AnfR)
2023/11/28(火) 21:27:35.30ID:1nBQ24fZ0 やはりmojoの時代来るか
804デフォルトの名無しさん (ワッチョイ 8717-pENz)
2023/11/29(水) 04:15:28.77ID:MwCCIaBL0 プログラミング言語覚えるなんて必要な努力が知れてるでしょ。特にパラダイムが変わらない場合。
Pythonがある程度書けるようになったらプログラマー目指してるなら他の言語やったほうがいいし、そうでないなら機械学習みたいな明らかに別のドメイン知識の勉強が必要なものやるかした方がいいでしょ。
Pythonだけ極めてる人なんてほとんど居ないのでは。
Pythonがある程度書けるようになったらプログラマー目指してるなら他の言語やったほうがいいし、そうでないなら機械学習みたいな明らかに別のドメイン知識の勉強が必要なものやるかした方がいいでしょ。
Pythonだけ極めてる人なんてほとんど居ないのでは。
805デフォルトの名無しさん (アウアウウー Sa0b-6V65)
2023/11/29(水) 06:25:40.88ID:n75oaT1ga Pythonだけチョットデキルようになって
極めたつもりになってる人なら沢山いるね
極めたつもりになってる人なら沢山いるね
806デフォルトの名無しさん (ワッチョイ 8701-4JCo)
2023/11/29(水) 06:28:25.87ID:rNDCOHEd0 O'REILLY本は何を読んでます?
807デフォルトの名無しさん (ワッチョイ 5fce-Ura4)
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になる
インポート出来ないのどうしたらいいの?
import pip
pip.main([“list”])
するとちゃんと一覧出てくるんだけど
じゃあそのパッケージimportってすると
ModuleNotFoundErrorになる
809デフォルトの名無しさん (ワッチョイ 6d46-MHAP)
2023/12/02(土) 11:13:47.87ID:6G8OKUYC0 うちのは Python 2、3両系入っていて、2系に誤インストールしたライブラリが3系で見つからず、よく大騒ぎする。
810デフォルトの名無しさん (ワッチョイ 797c-BPLl)
2023/12/02(土) 15:54:14.39ID:5vdThGAW0811デフォルトの名無しさん (ワッチョイ 794d-/XiQ)
2023/12/03(日) 01:33:52.43ID:l1Ri8dMm0 Python3エンジニア試験に合格したぜよ
これでエンジニア名乗っていいな
これでエンジニア名乗っていいな
812デフォルトの名無しさん (ワッチョイ 6689-cMNP)
2023/12/03(日) 02:44:06.55ID:hEIQYuRL0 最低コンピュータサイエンスの学士じゃないとエンジニアとは呼べないな。
813デフォルトの名無しさん (ワッチョイ b501-58iW)
2023/12/03(日) 03:11:29.20ID:IsmlQ0Hp0 ↑こういうやつが好きな単語
アルゴリズムとデータ構造
自社開発
後何があるかな
アルゴリズムとデータ構造
自社開発
後何があるかな
814デフォルトの名無しさん (ワッチョイ 3580-1tr5)
2023/12/03(日) 03:50:52.85ID:Pw30HPy40 >>808
pip installする時とimportする時で
違う呼び名のモジュールっていくつかあったなあ
それともモジュールがバージョン違いだったって奴だろうか
やっぱりanacondaじゃないとダメかなあ
pip installする時とimportする時で
違う呼び名のモジュールっていくつかあったなあ
それともモジュールがバージョン違いだったって奴だろうか
やっぱりanacondaじゃないとダメかなあ
815デフォルトの名無しさん (アウアウウー Sa21-wVFe)
2023/12/03(日) 11:18:15.19ID:QTewqrs7a >>813
馬鹿には無理
馬鹿には無理
816デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/03(日) 12:07:46.29ID:CywJMuft0 csvを読んで加工してテキストで出力する
csvファイルを開くwithと出力用のwithの二重になるのがなんか嫌なので、
csvを読んだ時点で一旦閉じたい
どうやったら全体をメモリに取り込めるだろう
csvファイルを開くwithと出力用のwithの二重になるのがなんか嫌なので、
csvを読んだ時点で一旦閉じたい
どうやったら全体をメモリに取り込めるだろう
817デフォルトの名無しさん (アウアウクー MM7d-CgE6)
2023/12/03(日) 13:29:53.87ID:l9F3rDC0M import pipってなに
818デフォルトの名無しさん (ワッチョイ 5df0-/D3x)
2023/12/03(日) 14:10:05.75ID:vkjAQods0819デフォルトの名無しさん (ワッチョイ 5df0-/D3x)
2023/12/03(日) 14:11:17.90ID:vkjAQods0 >>813
思いつかなくて草
思いつかなくて草
820デフォルトの名無しさん (ワッチョイ 6a78-UmkZ)
2023/12/03(日) 15:13:20.38ID:A1Jz2HtB0821デフォルトの名無しさん (ワッチョイ 6afb-ketZ)
2023/12/03(日) 15:41:03.50ID:XzZP3JPh0 客の前に出すときは、入社3週間でもエンジニアを連れてきましたと言って紹介する
822デフォルトの名無しさん (ワッチョイ 9103-YS9E)
2023/12/03(日) 19:32:26.44ID:6s2zsrgs0 >>816
ネストが深くなるのが嫌と言う意味ならwith ()で2つ同時にwithればいい
ネストが深くなるのが嫌と言う意味ならwith ()で2つ同時にwithればいい
823デフォルトの名無しさん (ワッチョイ 350e-QDDZ)
2023/12/04(月) 01:35:16.40ID:W3mu4L/A0 >>816
with open(filename, 'r') as f:
text = f.read()
# textを使った処理
と書けば普通にreadしてメモリに読み込んでファイルは閉じられる。
CとかC++とか、JavaとかC#でも一緒じゃない?
with open(filename, 'r') as f:
text = f.read()
# textを使った処理
と書けば普通にreadしてメモリに読み込んでファイルは閉じられる。
CとかC++とか、JavaとかC#でも一緒じゃない?
824デフォルトの名無しさん (ワッチョイ 6d46-wNAC)
2023/12/04(月) 07:23:54.73ID:MHjmHZBI0825デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 08:25:28.28ID:L1Td53yR0 いつもはそうしてる
f.read()が全部をメモリに読み込む処理だから
with open(CSV_FILE) as f:
csv = csv.DictReader(f)
これでもうfと縁が切れるかというと、csvから読む時にまだfを使うので閉じられない
全部読み込むオプションとかあればいいのに
f.read()が全部をメモリに読み込む処理だから
with open(CSV_FILE) as f:
csv = csv.DictReader(f)
これでもうfと縁が切れるかというと、csvから読む時にまだfを使うので閉じられない
全部読み込むオプションとかあればいいのに
826デフォルトの名無しさん (ワッチョイ 2aa6-3ha7)
2023/12/04(月) 08:45:12.95ID:0tblxJUD0 csv.reader の第一引数はファイル以外も可、csv.DictReader も同じく
https://docs.python.org/ja/3/library/csv.html#csv.reader
> イテレータ プロトコルをサポートし、 __next__() メソッドが呼ばれた際に常に文字列を返すような任意のオブジェクトにすることができます
with open("a.csv", newline="") as f:
reader = csv.DictReader(f.readlines())
https://docs.python.org/ja/3/library/csv.html#csv.reader
> イテレータ プロトコルをサポートし、 __next__() メソッドが呼ばれた際に常に文字列を返すような任意のオブジェクトにすることができます
with open("a.csv", newline="") as f:
reader = csv.DictReader(f.readlines())
827デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 08:52:03.37ID:L1Td53yR0 おお、イテレータなら何でもいいんだ
じゃあ解決
じゃあ解決
828デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 08:57:42.70ID:L1Td53yR0 マニュアルを調べてそう書いてあるから、ではなくて、
こんなもんファイルじゃなくてもリスト突っ込んでもいけるだろ、と試してたら即解決してた
そういう想像が働くかどうかがセンスなんだろうな
こんなもんファイルじゃなくてもリスト突っ込んでもいけるだろ、と試してたら即解決してた
そういう想像が働くかどうかがセンスなんだろうな
829デフォルトの名無しさん (アウアウウー Sa21-wVFe)
2023/12/04(月) 09:23:09.09ID:vGycO/bSa 想像働かせてもcsv.DictReaderがサポートしていないと意味無い
結局マニュアル嫁が正解
結局マニュアル嫁が正解
830デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 09:34:09.32ID:L1Td53yR0 サポートっていうか
わざわざそうしてくれてるというよりは、普通に作ったらそうなったというだけで
自分で作る場合でも受け取ったものをforで順に見ていけば勝手にそうなる
だから、サンプルにfと書いてあっても、他のものでもいける筈だとセンスがあれば直感できる
わざわざそうしてくれてるというよりは、普通に作ったらそうなったというだけで
自分で作る場合でも受け取ったものをforで順に見ていけば勝手にそうなる
だから、サンプルにfと書いてあっても、他のものでもいける筈だとセンスがあれば直感できる
831デフォルトの名無しさん (スプッッ Sdea-4wu8)
2023/12/04(月) 10:11:28.23ID:kngv0jx8d832デフォルトの名無しさん (アウアウウー Sa21-wVFe)
2023/12/04(月) 10:12:47.70ID:vGycO/bSa センスの善し悪しは否定していないよ
だけどマニュアル嫁が正解
だけどマニュアル嫁が正解
833デフォルトの名無しさん (ワッチョイ f90b-egvc)
2023/12/04(月) 10:14:29.29ID:f3mcZ5dk0 作法に則って作られたものは直感的に扱えるというだけの話
ただしそれが作法に則っているかどうかは自明ではないから
センスがあればマニュアル不要ということにはならない
ただしそれが作法に則っているかどうかは自明ではないから
センスがあればマニュアル不要ということにはならない
834デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 10:16:09.07ID:L1Td53yR0 マニュアルは全てが書いてあるからな
もしかして、イテレータ全部いけるのでは、という想定があって読まないと必要な場所が判らない
で、そんな想定が持てるなら読まなくても解決できる
全部読み込むオプションは無いかな、という観点でマニュアル見ても素通りする
もしかして、イテレータ全部いけるのでは、という想定があって読まないと必要な場所が判らない
で、そんな想定が持てるなら読まなくても解決できる
全部読み込むオプションは無いかな、という観点でマニュアル見ても素通りする
835デフォルトの名無しさん (スプッッ Sdea-48z8)
2023/12/04(月) 11:06:46.65ID:zZiGuUQkd 言ってることが支離滅裂で意味不明
どうしてもマニュアル不要に持っていきたいのは伝わってくるが
どうしてもマニュアル不要に持っていきたいのは伝わってくるが
836デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 11:21:42.25ID:L1Td53yR0 マニュアルで解決するならチュートリアルも解説書も要らん
ぐるっと回ってきて最後に、ああマニュアルにあったのか、となるのがいつものパターン
ぐるっと回ってきて最後に、ああマニュアルにあったのか、となるのがいつものパターン
837デフォルトの名無しさん (ワッチョイ 667b-fJt/)
2023/12/04(月) 11:31:56.68ID:dR/JDXQy0 さらに支離滅裂だな。自分で言ってる事がわからなくなってるんじゃないか?
838デフォルトの名無しさん (ワッチョイ 1ebf-zrcD)
2023/12/04(月) 11:49:50.89ID:cL5NOEP90 初心者のクレクレで申し訳ないのですが…
pythonに挫折しかかってます。
a = 1
print ("if文テスト")
a = input ("1を入力してください")
if a == 1:
print ("成功")
else:
print ("失敗")
これがどうしても成功に行かない…
行開けるとかnotにしてみるとかしたのだけれど。
教えて頂けると幸い。
pythonに挫折しかかってます。
a = 1
print ("if文テスト")
a = input ("1を入力してください")
if a == 1:
print ("成功")
else:
print ("失敗")
これがどうしても成功に行かない…
行開けるとかnotにしてみるとかしたのだけれど。
教えて頂けると幸い。
839デフォルトの名無しさん (ワッチョイ 6d46-wNAC)
2023/12/04(月) 11:58:54.27ID:MHjmHZBI0 input() の返り値の型を調べてみては。
a = input ("1を入力してください")
print(type(a))
とか。
a = input ("1を入力してください")
print(type(a))
とか。
840デフォルトの名無しさん (アウアウウー Sa21-wVFe)
2023/12/04(月) 12:09:40.21ID:vGycO/bSa841デフォルトの名無しさん (アウアウウー Sa21-cMNP)
2023/12/04(月) 12:17:03.22ID:HYznMI51a842デフォルトの名無しさん (アウアウウー Sa21-cMNP)
2023/12/04(月) 12:20:42.17ID:HYznMI51a >>813
プログラマを名乗りたいなら国家試験 + ベンダー試験 + ドメイン知識でなれるだろう。
プログラマを名乗りたいなら国家試験 + ベンダー試験 + ドメイン知識でなれるだろう。
843デフォルトの名無しさん (ワッチョイ 1eda-zrcD)
2023/12/04(月) 13:11:21.69ID:cL5NOEP90844デフォルトの名無しさん (ワッチョイ 667b-fJt/)
2023/12/04(月) 13:38:44.25ID:dR/JDXQy0 整数宣言とは1行目のa=1?
a = input ("1を入力してください”)でaの値を自分で変更してる
a = input ("1を入力してください”)でaの値を自分で変更してる
845デフォルトの名無しさん (ワッチョイ 1eda-zrcD)
2023/12/04(月) 13:55:48.74ID:cL5NOEP90 いや…
a = int
print ("if文テスト")
a = input ("整数を入力してください")
if a == int:
print ("成功")
else:
print ("失敗")
print(type(a))
これでも失敗にしかならないんだが…
ウチのpythonぶっ壊れてるのかな?
a = int
print ("if文テスト")
a = input ("整数を入力してください")
if a == int:
print ("成功")
else:
print ("失敗")
print(type(a))
これでも失敗にしかならないんだが…
ウチのpythonぶっ壊れてるのかな?
846デフォルトの名無しさん (ワッチョイ 667b-fJt/)
2023/12/04(月) 14:16:02.37ID:dR/JDXQy0 下実行してもわからんかったら理解が足りない
a = int
print(type(a))
a = input ("整数を入力してください")
print(type(a))
a = int
print(type(a))
a = input ("整数を入力してください")
print(type(a))
847デフォルトの名無しさん (ワッチョイ 5ea3-aytD)
2023/12/04(月) 14:31:25.94ID:UR+VnO+A0 a = 1
a = "2"
としたら
代入時か比較時にキャストが走って a == 2 になる言語がどこかにあるってことか
a = "2"
としたら
代入時か比較時にキャストが走って a == 2 になる言語がどこかにあるってことか
848デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 14:33:03.89ID:L1Td53yR0 = の左側は必ず新しいオブジェクトになる
というのはそうでない言語知ってると飛躍があるな
入れ物を用意して、中身を入れ替えていく変数観とは全然違う
というのはそうでない言語知ってると飛躍があるな
入れ物を用意して、中身を入れ替えていく変数観とは全然違う
849デフォルトの名無しさん (スプッッ Sdea-48z8)
2023/12/04(月) 14:47:47.19ID:apNvJw2Gd850845 (ワッチョイ 1eda-zrcD)
2023/12/04(月) 14:58:26.57ID:cL5NOEP90 理解が足りてないようです…
(別に皮肉じゃないです)
もう少し勉強してから出直してきます。
(別に皮肉じゃないです)
もう少し勉強してから出直してきます。
851デフォルトの名無しさん (ワッチョイ f951-q522)
2023/12/04(月) 15:10:15.88ID:X18HmWgG0 a = 1
の時点でaはint型かもしれないけどその後でinput文では数字入れてもstr型、つまり文字としての"1"が代入される
やりたいならinput文のあとでa=int(a)でint型に型変換するか、条件文で数字の1ではなく文字の"1"と比較すればいい
int型に型変換する場合はinput文で"A"とか数字に変換できない文字が入力されるとエラーになるのでそれを回避する条件文とか書くことになって面倒だけど・・・
pythonには型宣言は基本的に無いから後に代入された型で染められる
他の人も言ってるけど一行ごとにprint(type(a))とかで何の型になっているかチェックしてみたら?
の時点でaはint型かもしれないけどその後でinput文では数字入れてもstr型、つまり文字としての"1"が代入される
やりたいならinput文のあとでa=int(a)でint型に型変換するか、条件文で数字の1ではなく文字の"1"と比較すればいい
int型に型変換する場合はinput文で"A"とか数字に変換できない文字が入力されるとエラーになるのでそれを回避する条件文とか書くことになって面倒だけど・・・
pythonには型宣言は基本的に無いから後に代入された型で染められる
他の人も言ってるけど一行ごとにprint(type(a))とかで何の型になっているかチェックしてみたら?
852デフォルトの名無しさん (ワッチョイ 716b-UmkZ)
2023/12/04(月) 15:14:10.25ID:03ItZlbx0853デフォルトの名無しさん (ワッチョイ 6d46-wNAC)
2023/12/04(月) 15:16:05.57ID:MHjmHZBI0 >>847
/bin/sh は a = "2" が a == 2 になるね。
文意は皮肉かもしれないが、一応マジレス。
$ a='2'
$ test ${a} -eq 2; echo $? # 数値比較→真
0
$ test ${a} = '2'; echo $? # 文字比較→真
0
$ test ${a} -eq 1; echo $? # 数値比較(異値)→偽
1
$ test ${a} = '1'; echo $? # 文字比較(異値)→偽
1
$
/bin/sh は a = "2" が a == 2 になるね。
文意は皮肉かもしれないが、一応マジレス。
$ a='2'
$ test ${a} -eq 2; echo $? # 数値比較→真
0
$ test ${a} = '2'; echo $? # 文字比較→真
0
$ test ${a} -eq 1; echo $? # 数値比較(異値)→偽
1
$ test ${a} = '1'; echo $? # 文字比較(異値)→偽
1
$
854デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 15:25:20.99ID:L1Td53yR0 a = '1'
if a == 1:
は何のエラーにもならずfalseだけど、それが嬉しい局面って何かあるんだろうか
普通にエラーになってくれた方が助かるのに
if a == 1:
は何のエラーにもならずfalseだけど、それが嬉しい局面って何かあるんだろうか
普通にエラーになってくれた方が助かるのに
855845 (ワッチョイ 1eda-zrcD)
2023/12/04(月) 15:35:02.50ID:cL5NOEP90856デフォルトの名無しさん (ワッチョイ 667b-fJt/)
2023/12/04(月) 15:41:24.31ID:dR/JDXQy0 そもそもinput使う時点で文字列にしかならんからな
857デフォルトの名無しさん (スプッッ Sdea-48z8)
2023/12/04(月) 15:43:42.86ID:apNvJw2Gd859デフォルトの名無しさん (ワッチョイ 1ebd-egvc)
2023/12/04(月) 15:53:55.42ID:hskMlW3m0860デフォルトの名無しさん (ワッチョイ 653d-8IwF)
2023/12/04(月) 15:59:02.03ID:D7B41PS90 Python2のinput()はPython3のeval(input())
Python2のraw_input()はPython3のinput()
Python2のraw_input()はPython3のinput()
861845 (ワッチョイ 1eda-zrcD)
2023/12/04(月) 16:10:06.06ID:cL5NOEP90 とりあえず納得できました
皆さまのおかげです
また詰まったらクレクレしに来ます(苦笑)
ありがとうございました
皆さまのおかげです
また詰まったらクレクレしに来ます(苦笑)
ありがとうございました
862デフォルトの名無しさん (ワッチョイ f98c-UmkZ)
2023/12/04(月) 16:42:52.46ID:f5vq9b6L0 ユーザー入力が文字列以外で解釈される言語は見たことないけどな
あるのかな?
あるのかな?
863デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 16:59:52.75ID:L1Td53yR0 python2がそうだったのでは
864デフォルトの名無しさん (ワッチョイ 5ea3-aytD)
2023/12/04(月) 17:20:13.89ID:UR+VnO+A0865デフォルトの名無しさん (スッップ Sd0a-48z8)
2023/12/04(月) 17:53:17.77ID:jOpGWHbYd866デフォルトの名無しさん (ワッチョイ 5ea3-aytD)
2023/12/04(月) 21:14:40.89ID:UR+VnO+A0867デフォルトの名無しさん (スプッッ Sdea-4wu8)
2023/12/04(月) 21:39:54.56ID:XU6NDivrd 比較演算子は、
・真
・偽
・比較出来ない
・例外
の4値を返すべきだな
とっても面倒くさくなりそう
・真
・偽
・比較出来ない
・例外
の4値を返すべきだな
とっても面倒くさくなりそう
868デフォルトの名無しさん (スッップ Sd0a-48z8)
2023/12/04(月) 22:24:07.98ID:jOpGWHbYd >>866
俺はその設計が妥当だと思わないって意見表明をしてるんだよ
俺はその設計が妥当だと思わないって意見表明をしてるんだよ
869デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 22:28:33.13ID:L1Td53yR0 コンパイルできないくらい間違ったコードに警告するのは親切でありこそすれスルーするメリットは無いのでは
870デフォルトの名無しさん (スッップ Sd0a-48z8)
2023/12/04(月) 23:03:05.60ID:GzgqXY0ad >>869
静的型付け言語では型のチェックに関して静的解析の恩恵が受けられる
動的型付け言語では実行時に自前でチェックする必要がある
そしてそれを比較演算子に例外生成させることで実現しようというのは比較演算子の守備範囲を逸脱していると考える、という話
スルー云々という話ではない
静的型付け言語では型のチェックに関して静的解析の恩恵が受けられる
動的型付け言語では実行時に自前でチェックする必要がある
そしてそれを比較演算子に例外生成させることで実現しようというのは比較演算子の守備範囲を逸脱していると考える、という話
スルー云々という話ではない
871デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/04(月) 23:20:04.47ID:L1Td53yR0 なるほど、判らん(酔ってるから)
872デフォルトの名無しさん (ワッチョイ f9ee-UmkZ)
2023/12/04(月) 23:44:56.40ID:NLHKgHYS0 1 > ‘1’が実行時エラーになるように
1 == ‘1’を実行時エラーにする方針の言語があっても別にいいと思う
大小比較も等値比較もCPyrhonでは同じ一つの関数で処理されるんだけど
左辺の型からも右辺の型からも比較演算をサポートしてないとなったら等値比較の場合だけオブジェクトID比較を返すフォールバックを使うことになってる
言語設計者がエラーで弾いた場合のメリットよりフォールバックした場合のメリットを優先したというだけで比較演算子の守備範囲とかはあまり関係ないと思う
1 == ‘1’を実行時エラーにする方針の言語があっても別にいいと思う
大小比較も等値比較もCPyrhonでは同じ一つの関数で処理されるんだけど
左辺の型からも右辺の型からも比較演算をサポートしてないとなったら等値比較の場合だけオブジェクトID比較を返すフォールバックを使うことになってる
言語設計者がエラーで弾いた場合のメリットよりフォールバックした場合のメリットを優先したというだけで比較演算子の守備範囲とかはあまり関係ないと思う
873デフォルトの名無しさん (ワッチョイ f91e-WD8q)
2023/12/05(火) 02:10:11.77ID:9BlMohwu0 Ruby では以下は、両方ともfalse になる。
エラーにはならない。
型が違うから、問答無用でfalse
p 1 == "1"
p "1" == 1
true の条件は同じ型で、値も同じ時
Rubyは静的言語ではないから、コンパイルエラーにはならない。
テストでバグを見つけないといけないから、
その点、動的言語は面倒くさい
だから、TypeScript が流行った
エラーにはならない。
型が違うから、問答無用でfalse
p 1 == "1"
p "1" == 1
true の条件は同じ型で、値も同じ時
Rubyは静的言語ではないから、コンパイルエラーにはならない。
テストでバグを見つけないといけないから、
その点、動的言語は面倒くさい
だから、TypeScript が流行った
874デフォルトの名無しさん (スプッッ Sdea-48z8)
2023/12/05(火) 10:20:00.26ID:5ZWKk5tJd875デフォルトの名無しさん (ワッチョイ 35d1-QDDZ)
2023/12/05(火) 18:52:32.32ID:d/HKFAig0 >>830
pandasのread_json関数は直接文字列を渡したりファイルオブジェクトを渡せるけど、read_csvは直接文字列を渡せないんだけど
普通に作ったらとかいうけど、普通とは?って思うけどなあ
pandasのread_json関数は直接文字列を渡したりファイルオブジェクトを渡せるけど、read_csvは直接文字列を渡せないんだけど
普通に作ったらとかいうけど、普通とは?って思うけどなあ
876デフォルトの名無しさん (ワッチョイ 35d1-QDDZ)
2023/12/05(火) 19:01:32.87ID:d/HKFAig0 >>869
例えばJavaで((Object) 1) == "a"という式はエラーにならないし場合によるとしか言えないと思うけど。
「コンパイルできないくらい間違ったコード」っていうけど、「普通」と一緒で、どこからが間違ったコードなのよって話になる。
動的型付け言語ならなおさら。
例えばJavaで((Object) 1) == "a"という式はエラーにならないし場合によるとしか言えないと思うけど。
「コンパイルできないくらい間違ったコード」っていうけど、「普通」と一緒で、どこからが間違ったコードなのよって話になる。
動的型付け言語ならなおさら。
877デフォルトの名無しさん (スフッ Sd0a-nvfk)
2023/12/06(水) 10:09:21.73ID:OIX9QIK5d >>875
ほんそれ++
ほんそれ++
878デフォルトの名無しさん (ワッチョイ 6689-jFys)
2023/12/06(水) 11:53:32.45ID:e50gn0BB0 javaのイコールとpythonのイコールは異なるからなあ
isinstanceかisかtypeかなぁ
isinstanceかisかtypeかなぁ
879デフォルトの名無しさん (ワッチョイ 8a11-qRqa)
2023/12/06(水) 23:20:52.35ID:1hCR5TUW0 麻雀の点数計算できるライブラリみつけた
仕様が書いてあるページどっかにない?
仕様が書いてあるページどっかにない?
880デフォルトの名無しさん (ワッチョイ 8a11-qRqa)
2023/12/06(水) 23:38:12.91ID:1hCR5TUW0 仕様は見つけたけどすっげー読みづらい‥
881デフォルトの名無しさん (ワッチョイ 5ed4-aytD)
2023/12/06(水) 23:41:21.41ID:TvfjVsdx0 AIチャットボット向きの課題かも
ローカルルールを箇条書きで渡してコード書いてもらったら?
ローカルルールを箇条書きで渡してコード書いてもらったら?
882デフォルトの名無しさん (ワッチョイ 8a11-qRqa)
2023/12/06(水) 23:50:23.95ID:1hCR5TUW0 >>881
いやライブラリ見つけて仕様書もあったんだけどいかんせん読みづらくて…
いやライブラリ見つけて仕様書もあったんだけどいかんせん読みづらくて…
883デフォルトの名無しさん (ワッチョイ 5e00-WD8q)
2023/12/07(木) 03:59:22.29ID:kyWDdJFq0 >>875
Ruby のCSV なら、ファイルや文字列から、
1行ずつ、または全てを読み込める
CSV.foreach : ファイルから一行ずつ読み込む
CSV.read : ファイルから全てを読み込む
CSV.parse : 文字列から一行ずつ、または全てを読み込む
Ruby のCSV なら、ファイルや文字列から、
1行ずつ、または全てを読み込める
CSV.foreach : ファイルから一行ずつ読み込む
CSV.read : ファイルから全てを読み込む
CSV.parse : 文字列から一行ずつ、または全てを読み込む
884デフォルトの名無しさん (JP 0H3e-kPRq)
2023/12/07(木) 06:22:39.87ID:tyKSl/WnH885デフォルトの名無しさん (ワッチョイ 9e90-WD8q)
2023/12/07(木) 07:57:00.99ID:BRWWjO5+0 Pythonのお勉強スレでRubyを紹介するって、やっぱRuby使いは頭がおかしい。
886デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/07(木) 08:22:37.28ID:qvan2CQu0 awk -> perl -> python と流れてきたけど、
途中でrubyに立ち寄らなくて本当に良かった
途中でrubyに立ち寄らなくて本当に良かった
887デフォルトの名無しさん (ワッチョイ f963-pUkc)
2023/12/07(木) 08:46:37.16ID:bis3W60d0 隙有らば自分語り
誰も興味ないのにね
誰も興味ないのにね
888デフォルトの名無しさん (ブーイモ MM3e-fjfO)
2023/12/07(木) 12:22:23.65ID:G+XGanQ+M GPLに汚染されたRoRをずっと愛でてれば良いのに :-p
889デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/07(木) 13:32:27.34ID:qvan2CQu0 pythonでGPL感染に困るケースってある?
890デフォルトの名無しさん (ワッチョイ 8a11-WyqO)
2023/12/08(金) 15:55:44.91ID:j/ISpuI80891デフォルトの名無しさん (ワッチョイ 5e5b-aytD)
2023/12/08(金) 22:49:50.08ID:lBrblQMP0 ライブラリの使い方聞くんじゃなくて
点数計算のプログラム書いてもらえばええんよ
点数計算のプログラム書いてもらえばええんよ
892デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/08(金) 23:09:45.86ID:Q/J1Vxp/0 判定自体は簡単だけど、役満は断么をオーバライドするとか、
役満と役満は共存するとか、イレギュラーな規則の実装が面倒そう
役満と役満は共存するとか、イレギュラーな規則の実装が面倒そう
893デフォルトの名無しさん (ワッチョイ a510-yDrh)
2023/12/08(金) 23:17:23.87ID:4oKxEziY0 麻雀の点数計算なんて30年以上前からゲームで実装されているだろ。
何をいまさら。
何をいまさら。
894デフォルトの名無しさん (ワッチョイ 4954-9JYs)
2023/12/08(金) 23:58:52.73ID:Q/J1Vxp/0 そんな頃からpythonある訳ないだろ
895デフォルトの名無しさん (ワッチョイ 5763-JBvs)
2023/12/09(土) 01:08:20.81ID:ScuIIvWx0 python自体は30年以上前からある
896デフォルトの名無しさん (ワッチョイ ff68-XnMC)
2023/12/09(土) 03:48:32.15ID:Nm74I+ug0 スクレイピング案件ゲットするのに何時間勉強必要ですか?地頭は悪いです
897デフォルトの名無しさん (JP 0H8f-UJ9L)
2023/12/09(土) 04:59:58.84ID:+cLwEiyiH >>890
すごいな
最近のAIはPythonのライブラリの使い方まで教えてくれるのか
と思って今苦戦しているargparseの使い方を聞いてみたが
簡単なサンプルを提示してあとはドキュメント読めと言われた…
すごいな
最近のAIはPythonのライブラリの使い方まで教えてくれるのか
と思って今苦戦しているargparseの使い方を聞いてみたが
簡単なサンプルを提示してあとはドキュメント読めと言われた…
898デフォルトの名無しさん (ワッチョイ 9f11-yUyk)
2023/12/09(土) 09:01:15.35ID:/JDiY9I00 >>897
0からは書いてくれるけどライブラリはサンプルだけだったわorz
0からは書いてくれるけどライブラリはサンプルだけだったわorz
899デフォルトの名無しさん (ワッチョイ ff68-XnMC)
2023/12/09(土) 09:58:36.92ID:Nm74I+ug0 みなさんPythonの総勉強時間はどのくらいですか
900デフォルトの名無しさん (ワッチョイ 7fa1-tASO)
2023/12/09(土) 10:35:34.71ID:UhMT32qI0 Pythonの勉強とライブラリの勉強は切り離せない
ライブラリの勉強とライブラリの基礎理論の勉強は切り離せない
従って、人生の勉強時間の全てはPythonの勉強時間だったと言って差し支えない
つまり、人生の時間=Python勉強時間だ
ライブラリの勉強とライブラリの基礎理論の勉強は切り離せない
従って、人生の勉強時間の全てはPythonの勉強時間だったと言って差し支えない
つまり、人生の時間=Python勉強時間だ
901デフォルトの名無しさん (ワッチョイ bfbc-tovu)
2023/12/09(土) 10:47:51.86ID:HTRrM6ov0 YouTubeの視聴で10時間くらい
902デフォルトの名無しさん (ワッチョイ ff68-XnMC)
2023/12/09(土) 14:49:16.11ID:Nm74I+ug0 >>900
会社でも勉強の日々ですか?
会社でも勉強の日々ですか?
903デフォルトの名無しさん (ワッチョイ ff68-XnMC)
2023/12/09(土) 14:49:31.46ID:Nm74I+ug0 >>901
ワイは1時間
ワイは1時間
904デフォルトの名無しさん (ワッチョイ 176b-08gk)
2023/12/09(土) 16:21:11.17ID:X/idpvxd0 >>897
曖昧に聞くと曖昧にしか答えてくれないけど、具体的に詳しく聞けばちゃんと答えてくれるよ、用途を伝えてどうすればいいか説明してと聞いてみたら?
曖昧に聞くと曖昧にしか答えてくれないけど、具体的に詳しく聞けばちゃんと答えてくれるよ、用途を伝えてどうすればいいか説明してと聞いてみたら?
905デフォルトの名無しさん (ワッチョイ 9f11-yUyk)
2023/12/09(土) 19:37:36.95ID:/JDiY9I00906デフォルトの名無しさん (ワッチョイ 9f9e-tASO)
2023/12/09(土) 22:16:09.54ID:mK/Jf29s0907デフォルトの名無しさん (ワッチョイ 1f0e-tASO)
2023/12/10(日) 10:08:03.35ID:tnUY9tvW0 pyinstallerで作成したexeファイルの起動速度を上げたい
何をチューニングしたらいい?
何をチューニングしたらいい?
908デフォルトの名無しさん (ワッチョイ 7ff6-L8ZV)
2023/12/10(日) 11:04:36.18ID:dvINkCpQ0 gRPCを使ってローカルサーバー内のasyncio.Queueに別のプログラムからputとgetをすると
Queueが空のときにgetをすると後から呼ばれたputがgetの完了を待ってしまう
イメージとしてはredis-pyのblpopとrpushのようなことがしたいんだがどうすればいい?
クライアント側からは非同期処理を意識せずに呼び出せるようにしたい
server.py ttps://techiedelight.com/compiler/?server
producer.py ttps://techiedelight.com/compiler/?561a
consumer.py ttps://techiedelight.com/compiler/?edcb
grpcserver/grpcserver.proto ttps://techiedelight.com/compiler/?cb6b
Queueが空のときにgetをすると後から呼ばれたputがgetの完了を待ってしまう
イメージとしてはredis-pyのblpopとrpushのようなことがしたいんだがどうすればいい?
クライアント側からは非同期処理を意識せずに呼び出せるようにしたい
server.py ttps://techiedelight.com/compiler/?server
producer.py ttps://techiedelight.com/compiler/?561a
consumer.py ttps://techiedelight.com/compiler/?edcb
grpcserver/grpcserver.proto ttps://techiedelight.com/compiler/?cb6b
909デフォルトの名無しさん (ワッチョイ ff89-Qlhn)
2023/12/10(日) 11:35:35.01ID:nA++m0MY0 >>907
高速なCPUに載せ替え
高速なCPUに載せ替え
910デフォルトの名無しさん (ワッチョイ 5710-L8ZV)
2023/12/10(日) 11:46:03.36ID:wF+vsUm70911デフォルトの名無しさん (ワッチョイ 17f0-+EJW)
2023/12/10(日) 14:14:44.65ID:zLH0tlZ60 >>908
空かどうかチェックしてから呼べば?
空かどうかチェックしてから呼べば?
912デフォルトの名無しさん (ワッチョイ 7f85-L8ZV)
2023/12/10(日) 14:40:05.97ID:dvINkCpQ0 >>911
さっそくの回答ありがとうございます
それはPopMessageの中でタイムアウトまでget_nowait()を無限ループで回すって理解でいい?
PopMessageは空のキューで待ち構えててアイテムがputされたら即getって挙動にしたいんだけど
現在はタイムアウトになって空だった判定が終わってからputが実行されてる
さっそくの回答ありがとうございます
それはPopMessageの中でタイムアウトまでget_nowait()を無限ループで回すって理解でいい?
PopMessageは空のキューで待ち構えててアイテムがputされたら即getって挙動にしたいんだけど
現在はタイムアウトになって空だった判定が終わってからputが実行されてる
913デフォルトの名無しさん (ワッチョイ 7f85-L8ZV)
2023/12/11(月) 09:46:23.18ID:+ZTyxHoM0 >>908
サーバーをgRPC AsyncIO APIを使って書き換えたら想定していた動作になった
server.py ttps://techiedelight.com/compiler/?d73c
ただpush後にqueueの現在のサイズを表示する処理が
popされるまで実行されなくて
popされた直後にまとめて表示されるのをなんとかしたいけどどうすればいい?
それとも実はpopされるまでpushはタスクが積みあがってるだけで実行されてない?
サーバーをgRPC AsyncIO APIを使って書き換えたら想定していた動作になった
server.py ttps://techiedelight.com/compiler/?d73c
ただpush後にqueueの現在のサイズを表示する処理が
popされるまで実行されなくて
popされた直後にまとめて表示されるのをなんとかしたいけどどうすればいい?
それとも実はpopされるまでpushはタスクが積みあがってるだけで実行されてない?
914デフォルトの名無しさん (アウアウウー Sadb-+EJW)
2023/12/11(月) 15:14:04.17ID:9aD5b1NYa >>913
こうしたら?
async def _push_message_impl(self, content: bytes) -> None:
coro = self._message_queue.put(content)
task = self._loop.create_task(coro)
await task
print_size = functools.partial(self._print_size, "Pushed.")
print_size()
こうしたら?
async def _push_message_impl(self, content: bytes) -> None:
coro = self._message_queue.put(content)
task = self._loop.create_task(coro)
await task
print_size = functools.partial(self._print_size, "Pushed.")
print_size()
915デフォルトの名無しさん (ワッチョイ 7f01-L8ZV)
2023/12/11(月) 15:53:29.44ID:+ZTyxHoM0 >>914
ありがとうございます
それも試してみたけどpushのprintがまとめて実行される件は解決しなかった
試行錯誤した結果以下のコードで上手く動いた
putは待たずに即実行してほしいのだからput_nowaitにすべきで
あとはput_nowaitを投げっぱなし(fire and forget)にすると上手くいった
server.py ttps://techiedelight.com/compiler/?4c07
ありがとうございます
それも試してみたけどpushのprintがまとめて実行される件は解決しなかった
試行錯誤した結果以下のコードで上手く動いた
putは待たずに即実行してほしいのだからput_nowaitにすべきで
あとはput_nowaitを投げっぱなし(fire and forget)にすると上手くいった
server.py ttps://techiedelight.com/compiler/?4c07
916デフォルトの名無しさん (ワッチョイ 37bb-TEND)
2023/12/12(火) 17:44:29.04ID:PeOBrpb00 >>915
sys.stdout.flush()
sys.stdout.flush()
917デフォルトの名無しさん (ワッチョイ f754-+saG)
2023/12/12(火) 17:56:17.06ID:tcE92BOU0 print(flush=True)
918デフォルトの名無しさん (アウアウアー Sa4f-Ej2Q)
2023/12/12(火) 23:45:57.11ID:C+wFRSZxa >>854
intとfloat
intとfloat
919デフォルトの名無しさん (アウアウアー Sa4f-Ej2Q)
2023/12/12(火) 23:50:46.81ID:C+wFRSZxa920デフォルトの名無しさん (ワッチョイ ffb9-tASO)
2023/12/13(水) 00:30:55.74ID:l6shR1Bw0 RustのPartialEqが欲しそう
921デフォルトの名無しさん (ワッチョイ bfa8-wBN1)
2023/12/13(水) 01:11:36.89ID:/DXrNli00 0除算といっしょで想定外な後ろ2つは
止まるか例外だすだけちゃうの?
止まるか例外だすだけちゃうの?
922デフォルトの名無しさん (ワッチョイ f754-+saG)
2023/12/13(水) 08:17:29.51ID:S1FKlcqe0 でも設計者は真にした方が便利だと考えた
どういうケースを想定したんだろう
どういうケースを想定したんだろう
923デフォルトの名無しさん (アウアウクー MM4b-Ej2Q)
2023/12/13(水) 08:19:45.88ID:6xdHA+bAM924デフォルトの名無しさん (スプッッ Sd3f-AgIM)
2023/12/13(水) 08:39:21.17ID:2i8DhGS8d 複数の分岐処理がしたいなら、match文でいいんじゃ?
925デフォルトの名無しさん (ワッチョイ 3746-vhj2)
2023/12/13(水) 11:33:11.42ID:h3rLFE4B0 O除算。
>>> 1 / 'O'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for /: 'int' and 'str'
>>> 1 / 'O'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for /: 'int' and 'str'
926デフォルトの名無しさん (ワッチョイ ff89-Qlhn)
2023/12/13(水) 12:54:06.42ID:oNl+0rt40 チェックしたほうが良いんじゃね。
ケーキ食べたいのに、スフレかもしれんし
ケーキ食べたいのに、スフレかもしれんし
927デフォルトの名無しさん (ワッチョイ 9f5c-/ik2)
2023/12/13(水) 13:56:39.90ID:0Tk5upMb0 お嬢さん
928デフォルトの名無しさん (ワッチョイ 7775-RTrI)
2023/12/13(水) 14:13:11.71ID:WrZJJMf/0 スフレチーズケーキはスフレ?ケーキ?
多重継承?
多重継承?
929デフォルトの名無しさん (ブーイモ MMbf-tASO)
2023/12/13(水) 19:44:31.54ID:AZIMh9+DM class Cake:
kind = souffle
kind = souffle
930デフォルトの名無しさん (ワッチョイ d7be-HI/Z)
2023/12/13(水) 23:02:45.82ID:scKOPc+Y0 Nuitkaとollvmをつかって難読化コンパイルできたけど需要ある?
931デフォルトの名無しさん (ワッチョイ ff93-tASO)
2023/12/14(木) 07:16:50.48ID:VrbATqem0 Pythonって難読化意味ある?
932デフォルトの名無しさん (ワッチョイ d7be-HI/Z)
2023/12/14(木) 09:15:34.70ID:6IAGuCnn0 Nuitka使ってる時点で解析しずらくなる
933デフォルトの名無しさん (ワッチョイ f754-+saG)
2023/12/14(木) 09:26:18.20ID:mwsN68xN0 秘密鍵をコードに埋め込みたい時とか
LINEのオプチャでつかえるBOT作りたいんやがどうやるん?
pythonでできると聞いた
935デフォルトの名無しさん (アウアウアー Sa6e-ztdx)
2023/12/16(土) 11:50:39.29ID:1cAC/5Dza アホみてぇな質問のしかた
少しはググれよ
少しはググれよ
936デフォルトの名無しさん (アウアウウー Sa43-S+qA)
2023/12/16(土) 13:20:03.76ID:ZMKoBGKMa アホみたいって共感できるのすごいな
俺にはわからん。
俺にはわからん。
937デフォルトの名無しさん (ワッチョイ 5ecd-e8vO)
2023/12/21(木) 11:14:36.20ID:coKFs4JJ0 Nuitkaにnumpy plugin使うとwarningでるのが気になる…
938デフォルトの名無しさん (ワッチョイ 1354-STda)
2023/12/21(木) 11:22:02.14ID:NZg9FfTP0 selenium使うと必ず謎のwarning出る
939デフォルトの名無しさん (ワッチョイ 634c-jnAL)
2023/12/21(木) 12:17:23.93ID:+bYKk0Px0 裏庭にwarningがでる
940デフォルトの名無しさん (ワッチョイ 162a-AQ+F)
2023/12/21(木) 15:15:31.26ID:p8AR9zsG0 >>939
近頃の若者は「ワーニング」を「ウォーニング」とナマるから、通じんべ。
近頃の若者は「ワーニング」を「ウォーニング」とナマるから、通じんべ。
941デフォルトの名無しさん (ワッチョイ e7be-DkQ9)
2023/12/21(木) 15:47:42.35ID:Sj73mPPq0 ここにはジジイしかいません
942デフォルトの名無しさん (ワッチョイ 1601-aw5G)
2023/12/21(木) 18:01:43.42ID:Z95EBtZI0 pythonって遅くね?
943デフォルトの名無しさん (ワッチョイ eb69-DkQ9)
2023/12/21(木) 19:57:43.69ID:qrcYLDTk0 pythonは遅いよ
モジュールは早いよ
モジュールは早いよ
944デフォルトの名無しさん (ワッチョイ f705-yJWl)
2023/12/21(木) 21:58:50.34ID:JI0UYSEL0 ボトルネックだけRustとかで置き換えてやればいいんだろうね
Mojoならもっと楽に置き換えられるかな?
Mojoならもっと楽に置き換えられるかな?
945デフォルトの名無しさん (ワッチョイ 1e34-YOgt)
2023/12/21(木) 22:05:47.96ID:bObiKTRM0 本家がPyPyに乗り換えればええのに
946デフォルトの名無しさん (ワッチョイ 1354-STda)
2023/12/21(木) 22:06:13.74ID:NZg9FfTP0 対話式に動かせる機能削ったらもっと高速化できたのに
今まで入ったことない分岐に入った瞬間にエラーで止まることもなくなるし
今まで入ったことない分岐に入った瞬間にエラーで止まることもなくなるし
947デフォルトの名無しさん (ワッチョイ 6779-vD53)
2023/12/21(木) 23:08:17.59ID:Y2jP7Dyr0 >>946
そんなに速くなるの?コンパイルがうまくなるとか?
そんなに速くなるの?コンパイルがうまくなるとか?
948デフォルトの名無しさん (ワッチョイ 1e6a-Qk2W)
2023/12/22(金) 00:42:37.84ID:wOpI+TvL0 VSCode の拡張機能・Code Runner は、
右クリックメニューから、選択したコード、またはファイル全体を実行する
設定項目、executorMap には、多くの言語の実行コマンドが書いてある。
"code-runner.executorMap": {
"javascript": "node",
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"python": "python -u",
"ruby": "ruby",
ここで、pythonには、-u が付いている。
多分これが無いと、すぐに表示されない。
標準出力がキャッシュされるのかも
右クリックメニューから、選択したコード、またはファイル全体を実行する
設定項目、executorMap には、多くの言語の実行コマンドが書いてある。
"code-runner.executorMap": {
"javascript": "node",
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"python": "python -u",
"ruby": "ruby",
ここで、pythonには、-u が付いている。
多分これが無いと、すぐに表示されない。
標準出力がキャッシュされるのかも
949デフォルトの名無しさん (JP 0Hde-7iKX)
2023/12/22(金) 00:49:19.70ID:+37DXQP6H950デフォルトの名無しさん (ワッチョイ 162a-6P6V)
2023/12/22(金) 01:28:54.44ID:CdWyrZLV0951デフォルトの名無しさん (ワッチョイ f354-NbWU)
2023/12/23(土) 14:30:00.14ID:+yR1xAXI0 split('\t')で取り込んでいちいちintするのも面倒なので、
map(int, split)にしたい
でも空ですらエラーにされる
想定外が来たらNullでいいから、楽に処理できないもんか
map(int, split)にしたい
でも空ですらエラーにされる
想定外が来たらNullでいいから、楽に処理できないもんか
952デフォルトの名無しさん (ワッチョイ e3f0-HAvR)
2023/12/23(土) 14:36:35.98ID:cGlPuzRM0 >>946
いやREPLから実行してもインタプリタ本体は同じだから
いやREPLから実行してもインタプリタ本体は同じだから
953デフォルトの名無しさん (ワッチョイ 6f01-g7nW)
2023/12/23(土) 16:44:24.69ID:v4dsWN6K0 >>951
[int(x) for x in s.split('\t') if x]
or
[int(x) if x else None for x in s.split('\t')]
or
def to_int(s):
try:
return int(s)
except ValueError:
return None
map(to_int, s.split('\t')))
Pythonはパイプライン処理とは相性が悪いので
無理せずおとなしくPython風の書き方を従っておいたほうがベター
[int(x) for x in s.split('\t') if x]
or
[int(x) if x else None for x in s.split('\t')]
or
def to_int(s):
try:
return int(s)
except ValueError:
return None
map(to_int, s.split('\t')))
Pythonはパイプライン処理とは相性が悪いので
無理せずおとなしくPython風の書き方を従っておいたほうがベター
954デフォルトの名無しさん (ワッチョイ f354-NbWU)
2023/12/23(土) 17:10:46.05ID:+yR1xAXI0 やっぱり自分用intを作るのが正解か
955デフォルトの名無しさん (ワッチョイ 7f11-ZROD)
2023/12/23(土) 17:11:30.40ID:MC2+Dwkk0 そんなバカな発想やめな
956デフォルトの名無しさん (ワッチョイ 6f01-sfQN)
2023/12/23(土) 17:50:31.60ID:v4dsWN6K0 pandasならそれなりによろしくやってくれる
converterも指定できるので自分でmapする必要はない
s = "111\t\t222\t\t333\t\t000"
pd.read_csv(StringIO(s), header=None, sep='\t')
Out:
0 1 2 3 4 5 6
0 111 NaN 222 NaN 333 NaN 0
converterも指定できるので自分でmapする必要はない
s = "111\t\t222\t\t333\t\t000"
pd.read_csv(StringIO(s), header=None, sep='\t')
Out:
0 1 2 3 4 5 6
0 111 NaN 222 NaN 333 NaN 0
957デフォルトの名無しさん (ワッチョイ e3f0-Krj3)
2023/12/23(土) 17:58:11.43ID:cGlPuzRM0 >>951
モナドの出番だな
モナドの出番だな
958デフォルトの名無しさん (ワッチョイ e3f0-36LA)
2023/12/23(土) 18:04:54.64ID:cGlPuzRM0 def maybe_int(value):
try:
return Just(int(value))
except ValueError:
return Nothing()
class Just:
def __init__(self, value):
self.value = value
def bind(self, func):
return func(self.value)
def __repr__(self):
return f"Just({self.value})"
class Nothing:
def bind(self, func):
return self
def __repr__(self):
return "Nothing()"
# 例としてのタブ区切りの文字列
input_string = "123\t456\t\t789"
# モナド風の変換
result = [maybe_int(x) for x in input_string.split('\t')]
# 結果の確認
print(result)
try:
return Just(int(value))
except ValueError:
return Nothing()
class Just:
def __init__(self, value):
self.value = value
def bind(self, func):
return func(self.value)
def __repr__(self):
return f"Just({self.value})"
class Nothing:
def bind(self, func):
return self
def __repr__(self):
return "Nothing()"
# 例としてのタブ区切りの文字列
input_string = "123\t456\t\t789"
# モナド風の変換
result = [maybe_int(x) for x in input_string.split('\t')]
# 結果の確認
print(result)
959デフォルトの名無しさん (ワッチョイ e3f0-36LA)
2023/12/23(土) 18:05:26.31ID:cGlPuzRM0 インデントおかしくなったスマソ
960デフォルトの名無しさん (ワッチョイ 63bc-BWWG)
2023/12/23(土) 19:36:53.20ID:/V7lYSgm0 Haskellを使いたい願いながらPythonを使わざるを得ない哀れな人間が書きそうなコード見て笑っちゃった
961デフォルトの名無しさん (ワッチョイ 63bc-BWWG)
2023/12/23(土) 19:58:21.69ID:/V7lYSgm0 しかもこれモナドというよりはファンクターじゃね
962デフォルトの名無しさん (ワッチョイ 63bc-BWWG)
2023/12/23(土) 20:01:20.65ID:/V7lYSgm0 あ、いやファクターではなさそう
963デフォルトの名無しさん (ワッチョイ 031d-tFpX)
2023/12/23(土) 20:57:15.51ID:cy6wCCec0 result = [int(i) if type(i) == int else None for i in s.split('¥t')]
これでいけんか?
これでいけんか?
964デフォルトの名無しさん (ワッチョイ f354-NbWU)
2023/12/23(土) 21:21:39.45ID:+yR1xAXI0 いけるかどうかで言えば、lambdaで書いてもいけるんだろうけど、
いちいちそんなこと書きたくない
いちいちそんなこと書きたくない
965デフォルトの名無しさん (ワッチョイ 6f01-sfQN)
2023/12/23(土) 23:12:44.45ID:WlHvEb3t0 >>963
strなのでtype(i) == intはFalse
strなのでtype(i) == intはFalse
966デフォルトの名無しさん (アウアウクー MMc7-2itK)
2023/12/24(日) 05:47:20.20ID:jOD7RUSOM モナドってなんなの?
数学系の人が書いたHaskellの入門書読んだけど写像!写像!ばっかでめんどくさくなっちゃった
あれ本当に便利なの?
数学系の人が書いたHaskellの入門書読んだけど写像!写像!ばっかでめんどくさくなっちゃった
あれ本当に便利なの?
967デフォルトの名無しさん (ワッチョイ 63bc-BWWG)
2023/12/24(日) 06:03:40.69ID:2RNZTzrB0 モナドはRustでも採用されとらんし、HaskellでもIOモナド以外であんま使われてる印象ないし、神経質なオタクがIOすら数学的にしたくて入れたような印象があるな
それはそうと写像とかの数学概念は普通に筋の良い抽象化で便利だとは思う
それはそうと写像とかの数学概念は普通に筋の良い抽象化で便利だとは思う
968デフォルトの名無しさん (ワッチョイ f354-NbWU)
2023/12/24(日) 08:20:03.60ID:Cma5/cXc0 内包表記も数学から持ってきてるな
969デフォルトの名無しさん (ワッチョイ 03de-tFpX)
2023/12/24(日) 11:28:16.67ID:r1BGz2rf0970デフォルトの名無しさん (ワッチョイ 6f01-sfQN)
2023/12/24(日) 13:10:11.85ID:+alFE5Zb0 >>969
いけるけど記号を考慮すると面倒なのでtry-exceptしたほうが簡単だよ
int(1_000) => 1000
int(1__000) => ValueError
int(1_0_0_0) => 1000
int(1_0_0_0_) => ValueError
いけるけど記号を考慮すると面倒なのでtry-exceptしたほうが簡単だよ
int(1_000) => 1000
int(1__000) => ValueError
int(1_0_0_0) => 1000
int(1_0_0_0_) => ValueError
971デフォルトの名無しさん (ワッチョイ ff7c-y73S)
2023/12/25(月) 04:22:31.09ID:1pIswkAR0 Python使ったデータサイエンス系の開発環境を会社の事情でLinuxからWindowsに移行したんだけど
ファイルやフォルダへのショートカット(.lnk)をPythonで直接的に扱えないことに今更気づいた
Pythonのせいではないとはいえ死ぬほど不便なのでなんとかしたい
WshShortcutを使ってごちょごちょすればアクセスできるけどそんな面倒なことしてられないし
環境がWindowsの人って普段どうしてるの?
ショートカット使うのはやめてmklinkコマンドでシンボリックリンク張る感じ?
でもシンボリックリンク自体がWindowsだとあまり文化として一般的ではないと思う(たとえギークレベルでも)
ファイルやフォルダへのショートカット(.lnk)をPythonで直接的に扱えないことに今更気づいた
Pythonのせいではないとはいえ死ぬほど不便なのでなんとかしたい
WshShortcutを使ってごちょごちょすればアクセスできるけどそんな面倒なことしてられないし
環境がWindowsの人って普段どうしてるの?
ショートカット使うのはやめてmklinkコマンドでシンボリックリンク張る感じ?
でもシンボリックリンク自体がWindowsだとあまり文化として一般的ではないと思う(たとえギークレベルでも)
972デフォルトの名無しさん (ワッチョイ 6f99-ryOq)
2023/12/25(月) 05:28:22.15ID:fZmNQMgb0 漏れは、デスクトップにショートカットを作って、
Windows 10, WSL2 でLinux・Ubuntu を起動して、
VSCode でRuby on Rails をやってるけど
リンク先
C:\Windows\System32\wsl.exe code .
作業フォルダ
\\wsl$\Ubuntu-18.04\home\<ユーザー名>\project
Windows 10, WSL2 でLinux・Ubuntu を起動して、
VSCode でRuby on Rails をやってるけど
リンク先
C:\Windows\System32\wsl.exe code .
作業フォルダ
\\wsl$\Ubuntu-18.04\home\<ユーザー名>\project
973デフォルトの名無しさん (スップ Sd1f-AH//)
2023/12/25(月) 12:27:50.83ID:w/c7nza5d Pythonに限った話でなくプログラム言語全般の話で恐縮なのですが、変数名などの命名規則で先頭小文字のキャメルケースが使われることも良くあると思います。(先頭大文字パターンもあるのは認識しています)
この「先頭は小文字」というのは、見た目的に読みやすい、とかそういう理由なのでしょうか?
例えば、ある変数 productCode があったとして、「productCode」をチェックする関数だと
checkProductCode()
みたいな感じになり、Productの先頭が大文字になります。
同じものを指してるのに、先頭が小文字大文字が混在してなんかモヤモヤします。
こういうのはあまり気にならないものなのでしょうか?
この「先頭は小文字」というのは、見た目的に読みやすい、とかそういう理由なのでしょうか?
例えば、ある変数 productCode があったとして、「productCode」をチェックする関数だと
checkProductCode()
みたいな感じになり、Productの先頭が大文字になります。
同じものを指してるのに、先頭が小文字大文字が混在してなんかモヤモヤします。
こういうのはあまり気にならないものなのでしょうか?
974デフォルトの名無しさん (ワッチョイ 639a-l39z)
2023/12/25(月) 12:46:19.39ID:HDhwTf8w0 productCodeはProductCodeのインスタンスが入ってる変数
checkProductCodeは特定のインスタンスではなくProductCodeに対する関数
というふうにわざわざ考えたりしないくらいには気にならない
checkProductCodeは特定のインスタンスではなくProductCodeに対する関数
というふうにわざわざ考えたりしないくらいには気にならない
975デフォルトの名無しさん (ワッチョイ 63bc-BWWG)
2023/12/25(月) 13:01:34.08ID:bUfbLUPY0 先頭小文字のCamelCaseみたいなキモい書き方Pythonには存在せんだろ
なんでよりによってPythonスレで聞くんだ
なんでよりによってPythonスレで聞くんだ
976デフォルトの名無しさん (ワッチョイ f354-NbWU)
2023/12/25(月) 13:45:24.80ID:Ebjaalbb0 移植する時に直すの面倒でキャメルケースが残ることもある
区切り部分を大文字にしてるんだから先頭は小文字が合理的だけど、
世の中一般では固有名詞に使うことが多いので先頭も大文字になる
pythonでクラス名や例外名が大文字始まりのキャメルケース推奨なのは、
どういう経緯があるんだろう
区切り部分を大文字にしてるんだから先頭は小文字が合理的だけど、
世の中一般では固有名詞に使うことが多いので先頭も大文字になる
pythonでクラス名や例外名が大文字始まりのキャメルケース推奨なのは、
どういう経緯があるんだろう
977デフォルトの名無しさん (ワッチョイ 53a7-tFpX)
2023/12/25(月) 13:46:50.50ID:KMEA0AVf0 >>973
先頭大文字だとクラスを指してるように勘違いしちゃうからとかかもしれん
先頭大文字だとクラスを指してるように勘違いしちゃうからとかかもしれん
978デフォルトの名無しさん (ワッチョイ e3f0-Krj3)
2023/12/25(月) 13:52:36.73ID:93zueivl0 >>971
win32comとか使えばできるっしょ
win32comとか使えばできるっしょ
979デフォルトの名無しさん (ワッチョイ 4364-bLjm)
2023/12/25(月) 14:10:07.28ID:4YZcJ8/J0 初心者が今からこの言語をやりたくなったらこっちをやれ
Perl→PHP+WordpressかPythonやれ
Ruby→絶対Pythonに引っ越すからPythonやれ
Fortran、Matlab、Julia、R、Processing→自分の専門領域でメジャーなものに従え、なければPython使え
Java、VB.net→これ勧めるやつは人売りだから逃げろ、プライベートならC#やれ
Lisp、C→日曜日にやるならOK
VBA→平日にやるならOK
C++→Rustやれ
Rust→Cのあとにやれ
Javascript、Typescript→やるならWebで学ぶのに慣れろ、本はすでに古いかすぐ古くなる
Go→利点がわかるならやれ、なんとなくならC#かPythonにしとけ
Haskell、O'caml、Scala→5年後くらいにイキりたくなったらやれ
SQL、正規表現→できて当たり前だからやっとけ
Perl→PHP+WordpressかPythonやれ
Ruby→絶対Pythonに引っ越すからPythonやれ
Fortran、Matlab、Julia、R、Processing→自分の専門領域でメジャーなものに従え、なければPython使え
Java、VB.net→これ勧めるやつは人売りだから逃げろ、プライベートならC#やれ
Lisp、C→日曜日にやるならOK
VBA→平日にやるならOK
C++→Rustやれ
Rust→Cのあとにやれ
Javascript、Typescript→やるならWebで学ぶのに慣れろ、本はすでに古いかすぐ古くなる
Go→利点がわかるならやれ、なんとなくならC#かPythonにしとけ
Haskell、O'caml、Scala→5年後くらいにイキりたくなったらやれ
SQL、正規表現→できて当たり前だからやっとけ
980デフォルトの名無しさん (ブーイモ MM1f-l39z)
2023/12/25(月) 14:31:05.96ID:77r75M+dM >Lisp、C→日曜日にやるならOK
>VBA→平日にやるならOK
>C++→Rustやれ
>Rust→Cのあとにやれ
おいw
>VBA→平日にやるならOK
>C++→Rustやれ
>Rust→Cのあとにやれ
おいw
981デフォルトの名無しさん (ワッチョイ e3f0-Krj3)
2023/12/25(月) 14:49:35.59ID:93zueivl0 >>979
C#に関する発言だけは的外れ
C#に関する発言だけは的外れ
982デフォルトの名無しさん (ワッチョイ 4364-bLjm)
2023/12/25(月) 14:50:59.66ID:4YZcJ8/J0 >>981
マジか
マジか
983デフォルトの名無しさん (ワッチョイ f354-NbWU)
2023/12/25(月) 15:00:57.01ID:Ebjaalbb0 C#を勧める人は筋トレ勧める人に似てる
984デフォルトの名無しさん (ワッチョイ 6f9b-WtmC)
2023/12/25(月) 15:29:16.14ID:4Z5LCY+60 F#で書きたいけど仕方なくC#で妥協してる
985デフォルトの名無しさん (ワッチョイ ff7c-y73S)
2023/12/25(月) 20:56:30.50ID:1pIswkAR0986デフォルトの名無しさん (ワッチョイ cf89-qc5R)
2023/12/25(月) 22:38:56.44ID:WF81hfK00 どうでもいいことだが
オナ禁したらめちゃ勉強捗るのな
オナ禁したらめちゃ勉強捗るのな
987デフォルトの名無しさん (JP 0H7f-5bsa)
2023/12/26(火) 07:38:40.27ID:3bMmKL6bH988デフォルトの名無しさん (ワッチョイ cf2a-n5rw)
2023/12/26(火) 10:18:42.86ID:a0/8HJXg0989デフォルトの名無しさん (JP 0H7f-5bsa)
2023/12/26(火) 10:34:36.79ID:3bMmKL6bH >>988
平然も何も、Windowsのショートカットは人がマウスでWクリックするために用意されている機能だろ
平然も何も、Windowsのショートカットは人がマウスでWクリックするために用意されている機能だろ
990デフォルトの名無しさん (ワッチョイ 6f9b-WtmC)
2023/12/26(火) 11:02:02.09ID:kpi70gTP0 Explorerで整理したファイル郡に対して処理したいんでしょ?
OS標準のデスクトップなんだし
自分ではそんなことしないが想像できる範囲の話やん
OS標準のデスクトップなんだし
自分ではそんなことしないが想像できる範囲の話やん
991デフォルトの名無しさん (ワッチョイ cfbb-slXw)
2023/12/26(火) 13:05:12.49ID:i/USyFaH0 マウント取りたいアホしかいない地獄のようなスレ
992デフォルトの名無しさん (ワッチョイ cf2a-Ivx1)
2023/12/26(火) 13:48:05.30ID:a0/8HJXg0 # The Thread from Hell !
from hell import thread
from hell import thread
993デフォルトの名無しさん (アウアウウー Saa7-Krj3)
2023/12/26(火) 14:13:43.15ID:HS5XBp93a >>990
まずExplorerを捨てろ
まずExplorerを捨てろ
994デフォルトの名無しさん (ブーイモ MM7f-fVlU)
2023/12/26(火) 21:26:30.09ID:kk4yj+FYM ショートカットはシンボリックリンクとは違う
995デフォルトの名無しさん (ワッチョイ bf4b-qNuo)
2023/12/27(水) 04:00:17.75ID:TJvzVpkY0 小学4・5年生にPython早いですかね?
スクラッチやるよりturtle極めさせようと思ってるんだが
間違ってますかね?
スクラッチやるよりturtle極めさせようと思ってるんだが
間違ってますかね?
996デフォルトの名無しさん (ワッチョイ 53a7-tFpX)
2023/12/27(水) 06:26:47.20ID:U0sabDMs0 >>995
何を懸念してるのかさっぱりわからん
何を懸念してるのかさっぱりわからん
997デフォルトの名無しさん (JP 0H7f-5bsa)
2023/12/27(水) 06:43:09.18ID:axeHJPf5H998デフォルトの名無しさん (ワッチョイ 8f87-6eTB)
2023/12/27(水) 07:00:37.83ID:oR+jfmx80 pythonは初心者なんで詳しい説明はできんが基本的なアルゴリズムの考え方は後々役に立つし本人の興味さえあれば年齢は関係無いと思う、俺は早いほうがいいと思う
999デフォルトの名無しさん (ワッチョイ bf4b-qNuo)
2023/12/27(水) 07:39:33.71ID:TJvzVpkY0 レスありがとう
ゲームクリエイターになりたいっていうんだけど、
テキストプログラミングやる前に、
ビジュアルプログラミングやる方が良いって
散々言われてるし、小学校中学校ではScratch教えてるっぽいから
どうしようかなって悩んでる
勉強させるほうが良いってのはわかる
個人ではいつでもゲーム作れるが
任天堂には勉強してないと入れないからな
ゲームクリエイターになりたいっていうんだけど、
テキストプログラミングやる前に、
ビジュアルプログラミングやる方が良いって
散々言われてるし、小学校中学校ではScratch教えてるっぽいから
どうしようかなって悩んでる
勉強させるほうが良いってのはわかる
個人ではいつでもゲーム作れるが
任天堂には勉強してないと入れないからな
1000デフォルトの名無しさん (ワッチョイ 3f59-Eh+F)
2023/12/27(水) 08:14:26.20ID:PW7pbSu60 素質があれば言語選ばずなんでもいけるだろ
選ばないと出来ないなら素質が無いんだよ
選ばないと出来ないなら素質が無いんだよ
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 97日 23時間 0分 45秒
新しいスレッドを立ててください。
life time: 97日 23時間 0分 45秒
10021002
Over 1000Thread 5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。
▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/
▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login
運営にご協力お願いいたします。
───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。
▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/
▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 中国国営メディア「沖縄は日本ではない」… ★6 [BFU★]
- 高市政権にパイプ役不在…日中高まる緊張 公明党の連立離脱影響、自民内にも懸念「自分でまいた種は自分で刈り取ってもらわないと」★2 [ぐれ★]
- 【速報】 日経平均の下落率3%超す、財政懸念で長期金利上昇 [お断り★]
- ナイツ塙が指摘のローソンコーヒーカップ、ロゴ「L」で誤解生みデザイン変更へ 在庫使い切る3か月後にリニューアル [muffin★]
- 【速報】 高市政権、「日本版DOGE」を立ち上げ 米国で歳出削減をした「政府効率化省(DOGE)」になぞらえたもの [お断り★]
- バービー、 台湾有事の発言の波紋で「たまったもんじゃない」「高市さんに真意は聞きたい」「国民に向けて説明してほしい」 [muffin★]
- 映画「ゼルダの伝説」、リンクとゼルダ姫が白人になってしまう。日本のものは日本人だろうが!! [592058334]
- 高市早苗「株やってる奴ザマァwww格差是正のためにも、もっと暴落した方がいいよwww」(´・ω・`)確かに。 [252835186]
- 【悲報】早速高市首相のせいで全国の民泊でキャンセルラッシュwwwwwwwwwwww 経営者も嘆き「こんな事は初めてだ…」😲 [871926377]
- 中国「高市が謝罪撤回しないとこれ全部なくなるけどどうする?」 [931948549]
- んなっしょい🍬禁止🈲のお🏡
- 【動画】男女混合レスリングのガチ試合の様子がこちら [738130642]
