1 名前:デフォルトの名無しさん mailto:sage [2021/11/12(金) 07:48:11.11 ID:vp8lzav70.net] !extend:default:vvvvv:1000:1024 !extend:default:vvvvv:1000:1024 ↑スレ立てる毎に減るので、減ってたら3つに補充すること。 ・当スレにRubyのソースコード類を書くことを禁ず ・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止 ・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨 ・エラーを解決したいときは、かならず エラー文(勝手に省略orスクショうp等の横着禁止)と おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。 ★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、 ↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止) ttps://techiedelight.com/compiler/ Run Code機能あり。 ttp://ideone.com/ デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ◇Pythonオフィシャルサイト www.python.org/ ◇まとめwiki ttp://python.rdy.jp/ ●関連スレ● 自称初心者は↓へ 【まず1嫁】くだすれPython(超初心者用) その55 https://mevius.5ch.net/test/read.cgi/tech/1633070807/ 〇前スレ〇 Pythonのお勉強 Part65 https://mevius.5ch.net/test/read.cgi/tech/1621749112/ 次スレの建立は>>985 が挑戦する。(980通過して24h後も落ちなくなった) VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2 名前:デフォルトの名無しさん mailto:sage [2021/11/12(金) 08:10:48.11 ID:bpmS9XZOM.net] >>1 己
3 名前:デフォルトの名無しさん mailto:age [2021/11/12(金) 08:18:06.78 ID:VqvTP9jX0.net] >>1 乙
4 名前:デフォルトの名無しさん [2021/11/12(金) 10:26:50.95 ID:uCoii1J0d.net] 乙py
5 名前:デフォルトの名無しさん [2021/11/12(金) 10:28:18.45 ID:uCoii1J0d.net] https://ideone.com/EAfGGN エラーでない警告でないNaNにもならない import numpy as np a = np.array([[1,2,3],[4,5,6],[7,8,9]]) print(a) print(np.linalg.inv(a))
6 名前:デフォルトの名無しさん [2021/11/12(金) 12:51:52.82 ID:dmTMZhmo0.net] >>5 先にフルランクかチェック
7 名前:デフォルトの名無しさん [2021/11/12(金) 12:56:23.56 ID:7GKDM9BX0.net] 乙
8 名前:デフォルトの名無しさん mailto:sage [2021/11/12(金) 15:16:53.81 ID:vp8lzav70.net] ファイルを指定するとそれを読み込んで加工したデータを返す という関数を共通化したいのでclass化した data = MyClass(file).get_data() みたいな感じにして、処理は全部__init__()に書いて、get_data()はreturnするだけ なんかすごくもにょるけど、どうするのがかっこいいだろう
9 名前:デフォルトの名無しさん mailto:sage [2021/11/12(金) 15:34:41.07 ID:PCxC9/Mt0.net] >>8 __init__()の中身は最低限にして 内部的にデータ加工用にメソッド作ったほうが良くない? __init__に処理全部書いたらテスト面倒やん ユニットテスト書いてみて、「これ面倒すぎじゃね……?」ってなったら なんかおかしいイメージがある
10 名前:デフォルトの名無しさん mailto:sage [2021/11/12(金) 15:56:57.93 ID:vp8lzav70.net] 改造元に初期化部分みたいなのが無いので難しい やるなら、ファイル名だけ__init__で保存して、実行兼取得のメソッドを呼ぶとか 結局クラス化はやめて、関数のままimportすることにした importにクラスと関数が並ぶと、それはそれで気持ち悪い
11 名前:デフォルトの名無しさん mailto:sage [2021/11/12(金) 17:26:55.13 ID:zcb9bs5A0.net] Javaあたり出身ぽいな 別に関数とクラスのimport並ぶのは問題ないし普通のことだよ
12 名前:デフォルトの名無しさん [2021/11/12(金) 18:37:46.63 ID:JnXYuZWYa.net] >>8 genrator/iterator
13 名前:デフォルトの名無しさん [2021/11/12(金) 19:25:30.81 ID:7GKDM9BX0.net] まあ、無理してクラスにしなくても関数で処理した方がいいかもね。 クラスはカプセル化だから、与えたファイルに対して、 読み込む、書き込む、処理A(データ加算した結果を返す)、処理B(データ乗算した結果を返す) みたいに、色々処理があるなら意味があるけど。一つだけの処理なら関数のがすっきりするかもね。
14 名前:デフォルトの名無しさん [2021/11/12(金) 21:52:46.61 ID:dmTMZhmo0.net] >>8 クラス化する理由が分からん data=get_data(file)じゃいかんのか?
15 名前:デフォルトの名無しさん mailto:sage [2021/11/13(土) 09:46:57.03 ID:QiVf5l5lM.net] その後dataをどう使うかにもよるよね
16 名前:デフォルトの名無しさん mailto:sage [2021/11/13(土) 10:34:21.46 ID:AEtH6sJt0.net] 何となくモジュールはクラスだけだと思ってたんだよ しかも1ファイル1クラス
17 名前:デフォルトの名無しさん [2021/11/13(土) 12:28:44.78 ID:GR8tTV2xa.net] あなたはJava病です 御愁傷様です
18 名前:デフォルトの名無しさん [2021/11/13(土) 13:09:30.79 ID:0SlXheyX0.net] Javaに染まるとこうなるのか? おっかねぇ
19 名前:デフォルトの名無しさん mailto:sage [2021/11/13(土) 16:14:47.55 ID:ykLruLAta.net] 基本的に関数で作ってから後からこれ、もっとまとめられるんじゃね?ってなってからクラスにする感じ 最初からクラスを作ったり難しい事をするとバグに気づきにくくなる
20 名前:デフォルトの名無しさん mailto:sage [2021/11/13(土) 16:31:19.80 ID:K8NGEw2p0.net] >>19 普通はコーディング前の設計時にクラスは作られるんだわ それこそ「アプリケーションとしての不具合をなくすために」クラスは作られる
21 名前:デフォルトの名無しさん mailto:sage [2021/11/13(土) 16:39:52.82 ID:Tmt+B6uyr.net] >>19 設計しないでコーディングしてるのか? 一番ダメなやり方だろ
22 名前:デフォルトの名無しさん mailto:sage [2021/11/13(土) 16:42:44.96 ID:uwHpm0Tc0.net] モジュール化しないとは誰も書いてないけど インスタンス化しない設計ならクラスの方が冗長でしょ
23 名前:19 mailto:sage [2021/11/13(土) 19:42:10.31 ID:K/485EK5a.net] ごめん、頭の中で設計しながらコーディングしてるから問題ないわ
24 名前:19 mailto:sage [2021/11/13(土) 19:47:16.69 ID:K/485EK5a.net] あとPythonのクラスは動作速度を低下させるから無理にする必要もない
25 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 00:13:54.03 ID:xnhKIbNQ0.net] >>21 おいオメー さっきからうるせえぞ 「設計する」「設計する」ってよォ〜〜〜 どういうつもりだてめー そういう言葉はオレたちの世界にはねーんだぜ… そんな弱虫の使う言葉はな………
26 名前:デフォルトの名無しさん [2021/11/14(日) 01:20:39.27 ID:L6aMQe6P0.net] >>24 Python使ってる時点でこれ以上気にする程遅くならんやろ
27 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 08:16:59.25 ID:oS1oS1yMM.net] クラス作るのを難しいとか言う人なのでそっとしておいてやってね
28 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 08:19:51.45 ID:KajEYa8D0.net] 再利用する必要が発生したらクラス化だな この世の全てはオブジェクトなのであるー、とトップダウンでオブジェクト思考しようとしても無理で、 あんなもんは上等なライブラリに過ぎない
29 名前:19 mailto:sage [2021/11/14(日) 11:52:14.47 ID:1vDNCXCc0.net] 別にクラス出来ないとも言ってないし、Python速くしようと思えばだいぶ速くできるんだけども
30 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 12:04:28.87 ID:KajEYa8D0.net] 速度で困ることってあるの? 大抵は秒で終わる
31 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 12:55:06.17 ID:r+uJUw0M0.net] そういう部分って塵積だから実際に困ってからリファクタしたらいいんだけど エンジニア思考的には誤差でも遅い選択肢をとりたくないよね 余計な仕組みが介在してると読み解こうとミスリードしがちだし
32 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 13:07:34.46 ID:BR/vBx9v0.net] グラスも変数なんだが、グローバル変数をクラスにまとめたらglobalは書かなくても良くなったわ。
33 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 13:11:14.12 ID:KajEYa8D0.net] 設計自体は間違ってないから、一旦グローバル変数多用して書いたコードが、 classにするとパズルが解けるようにするすると綺麗になっていくのは気持ちいい
34 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 13:51:57.42 ID:E00roTgyF.net] >グローバル変数をクラスにまとめたら グローバルなバカでかいクラスが生まれるのか
35 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 14:17:15.55 ID:KajEYa8D0.net] コード上は明確に分離はしてないけど、処理としてはちゃんと分離していて、 ブロックとブロックの受け渡し部分にいくつかのグローバル変数がある という状態のものを引数や戻り値に変更して、関数やクラスに切り分けて すっきりさせるのは簡単
36 名前:デフォルトの名無しさん mailto:sage [2021/11/14(日) 15:24:49.69 ID:dwOSLptua.net] >>34 a.b.cと言った変数をクラスに定義して、para.aと使うだけ。 書き換えでもglobalは不要になる。
37 名前:デフォルトの名無しさん [2021/11/15(月) 16:52:45.22 ID:wu1uqKJYM.net] お前らってわざとミスリードな読み方するよね
38 名前:デフォルトの名無しさん mailto:sage [2021/11/15(月) 17:42:17.61 ID:gIcwiD4A0.net] miss readだけにwww
39 名前:デフォルトの名無しさん mailto:sage [2021/11/15(月) 20:02:39.05 ID:HZC12ov+0.net] >>34 class アホ: pass アホ.ボケ="カス" アホ.オレ="フサフサ" こんな感じでアホの空クラス作っておいて後からアホに紐付いた変数を作ったり出来る
40 名前:デフォルトの名無しさん mailto:sage [2021/11/15(月) 20:07:29.84 ID:2nh4BpvC0.net] >>1 以前、Rubyの本読んでたけど、Ruby好きとは仲良くなれないと思った。
41 名前:デフォルトの名無しさん mailto:sage [2021/11/15(月) 20:10:30.92 ID:trxoMZbv0.net] perl使っててかゆい所に手が届くようにするとrubyになる
42 名前:デフォルトの名無しさん mailto:sage [2021/11/15(月) 20:32:52.77 ID:x301xsWW0.net] 言語は痒くなくなったけど代わりに脳みそが痒い奴が寄り付くようになった
43 名前:デフォルトの名無しさん mailto:sage [2021/11/15(月) 20:36:51.02 ID:trxoMZbv0.net] 既に言語はあって、それで目的のことはできるだろうに、 それでも新たな言語を作る奴というのは何か振り切ってるので、 出来上がった言語もそれぞれに振り切っている pythonは何ていうか、全てに中庸なんだよな 力を抜きすぎないけど凝りすぎない
44 名前:デフォルトの名無しさん [2021/11/15(月) 22:22:57.49 ID:vWqBfheN0.net] python は qt との相性が抜群なので、120%満足です。 力技でperl/Qtを使ってた頃がバカみたい w perl と qt の相性は最悪。
45 名前:敵基地攻撃能力保有 mailto:sage [2021/11/16(火) 01:10:42.53 ID:iwzdrBCN0.net] ソ連の核は綺麗な核 ポル・ポトはアジア的優しさ 北朝鮮は地上の楽園 珊瑚自作自演事件 南京・慰安婦捏造 教科書書き換え「誤報」事件 朝日・武富士裏献金事件 拉致問題切り捨て サイレント魔女リティ 風の息遣い 五味ボマー 変態新聞 村木局長犯人扱い その他人民裁判ならぬマスコミ裁判は数知れず そしてマスコミお得意の「報道しない自由」 これでも貴方は新聞を信用しますか これでも貴方は新聞を購読しますか よく考えて下さい
46 名前:デフォルトの名無しさん mailto:age [2021/11/16(火) 01:17:12.27 ID:lkEbsocr0.net] >>44 他のGUI toolkitと比べてQtの優位性って何がある? 最近GUIにもちょっと手を出そうとしてるんだけど、QtがヨサゲならQtopia触ってた身としては他の模索省いてこのまま進めたい
47 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 07:24:30.85 ID:MhaWhMirr.net] Qt自体が時代遅れ
48 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 07:50:46.32 ID:rEvbb9QE0.net] >>46 ヤッパリ古いのは機能豊富だしカレテル Qt利用経験あるならPyQtかPySide2で決まりだと思う
49 名前:デフォルトの名無しさん [2021/11/16(火) 08:44:38.99 ID:mgTVYsIn0.net] Qt-designerが使えるのが一番だな、GUIで画面が作れないとメチャクチャ大変から。
50 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 09:05:22.55 ID:nevdyZlN0.net] excelとかxmlとかいろんなファイルを読んで別のファイルを生成するツールがあって 自分用で使うなら設定用のテキストファイルに 読み込むファイルや出力ファイルを記述する方式で十分なんだけど、 社内で共有して使う用にアホでも使えるGUIを用意したい場合、 何を使うのがいいだろう
51 名前:デフォルトの名無しさん [2021/11/16(火) 10:21:21.37 ID:5D9mKY7bF.net] >>42 あっちのスレで引き留めて置いて欲しいんだが 色んなスレに拡散感染拡大して迷惑 それだけの吸引力も無いようだ
52 名前:デフォルトの名無しさん [2021/11/16(火) 10:24:40.56 ID:5D9mKY7bF.net] >>39 ハゲにハゲと言うのはハゲであることは事実だが名誉棄損にはなるらしい
53 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 10:28:07.61 ID:5D9mKY7bF.net] >>45 https://www.jiji.com/jc/article?k=2021111500707
54 名前:デフォルトの名無しさん [2021/11/16(火) 10:31:29.98 ID:5D9mKY7bF.net] >>50 設定ファイルのテンプレをexcelで造って excelから設定を読み込めば喜ばれる
55 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 11:15:16.57 ID:nevdyZlN0.net] 設定のexcelファイルはいいな 以前の設定の流用がしやすいし、操作にも慣れてる 説明も書き放題 ボタンをクリックするとpythonが起動する部分の設定が最難関だけど、 カレントにあると決め打ちでいいか
56 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 13:50:36.62 ID:dtmpxDpX0.net] 誰もがエクセル使えると思わないほうがいいよ UIとして使うにも限度があるしマクロ使うといちいち警告でるし複数PCからアクセスされると編集禁止とか余計なエラーが出てとにかくみんなイラつくだけ UIデザインはHTMLにまかせてNode.jsなりで管理するのが楽かと
57 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 13:57:58.94 ID:nevdyZlN0.net] まあ、フリーソフトの配布ではないので excelは全員が使えるとしてよい
58 名前:デフォルトの名無しさん mailto:sage [2021/11/16(火) 15:21:38.88 ID:6v6IG7710.net] ITリテラシーない人の相手したくない
59 名前:デフォルトの名無しさん [2021/11/16(火) 16:51:29.18 ID:iw6chFt80.net] >>47 Qt6でようやくasync/awaitってな…
60 名前:デフォルトの名無しさん [2021/11/16(火) 20:17:26.68 ID:mgTVYsIn0.net] チラッとネットで見たけど、async/awaitって真面目に使うとなると面倒そうだね。 これって主に何に使うの?fork()して実行より、楽って事?
61 名前:デフォルトの名無しさん [2021/11/16(火) 20:49:59.34 ID:LLUTRYIZ0.net] コンピュータの性能を100%引き出し、最高のユーザー体験をお約束します。
62 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 00:58:48.67 ID:TRGzpBEI0.net] PythonではFastAPI以外で使ったことないすね… js/tsではないと困るけど いつの間にかasyncio.runなんて追加されてたのか
63 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 01:16:00.95 ID:+JwFzM8Ra.net] 富嶽のsimで温暖化対策に貢献とか言ってるけど なぜ富嶽を北海道に造らなかったし
64 名前:デフォルトの名無しさん [2021/11/17(水) 02:16:34.56 ID:TmFCV0x+0.net] 寒冷地域と温暖地域の温度差が少なくなると対流が起きず地球が冷やされないからでは?
65 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 02:24:11.13 ID:vyPEPYRk.net] あんまりpython関係ないかもだけど ちょっとした設定情報をjson形式で保存してて 更新とかするときに json.loads,json.dumpsとopenで丸ごと上書き ってやってるんだけどダメかな? (他の重要というかシステムに近い設定とかはenvとかDBで管理してる) jsonじゃなくてそういうのに特化した規格ってあるのだろうか。
66 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 03:12:57.62 ID:HN5Eyc2m0.net] いいよ
67 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 06:34:49.63 ID:h3betjKK0.net] json, yml, configparser
68 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 06:37:00.64 ID:qr7EHiL50.net] json便利だけど読みにくい 読むコツ教えて
69 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 06:51:46.05 ID:dwBhRem9a.net] >>68 整形してないからじゃ? してあっても読みにくいなら、キミ自身に問題がある
70 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 07:49:12.20 ID:5cuGb6Ey0.net] >>65 クラス化しとけば差し替えも簡単
71 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 07:49:51.40 ID:5cuGb6Ey0.net] >>68 色付きで表示できるviewerで見る
72 名前:デフォルトの名無しさん [2021/11/17(水) 10:36:40.12 ID:wlAtkNPK0.net] jsonは無駄が多い SQLiteでええやん
73 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 10:46:13.37 .net] sqlだとソースからみるときクライアント選ぶのがなぁ・・
74 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 10:48:59.66 ID:XqIxGMI20.net] 無駄の多さならxml
75 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 11:44:41.09 ID:qr7EHiL50.net] >>71 ありがとう!これなら見えるね。
76 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 12:52:40.46 ID:XqIxGMI20.net] python2の方が良かったのに という点ってある?
77 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 13:10:53.17 ID:HN5Eyc2m0.net] IronPythonは未だに2やで
78 名前:デフォルトの名無しさん [2021/11/17(水) 14:16:22.07 ID:wlAtkNPK0.net] print
79 名前:デフォルトの名無しさん mailto:sage [2021/11/17(水) 15:57:05.68 ID:4FTJCengM.net] >>65 強いて言えば、一時ファイルに書き込んでからrenameで上書きした方が安全、くらい
80 名前:デフォルトの名無しさん [2021/11/18(木) 09:17:27.97 ID:tpBIFt92M.net] 最初からSQLite使えばいい。 ジャーナリングも標準であるし。
81 名前:デフォルトの名無しさん mailto:sage [2021/11/18(木) 17:38:05.48 ID:naW8oYaR0.net] 否定はしない
82 名前:デフォルトの名無しさん mailto:sage [2021/11/18(木) 18:04:56.64 ID:ah9sw/Zw0.net] 俺は嫌だ
83 名前:デフォルトの名無しさん mailto:sage [2021/11/18(木) 23:29:42.52 ID:/dHqMjeMa.net] asyncioはI/Oに効く データベースの読み書きとか通信処理とか バックグラウンド処理はCPUにオーバーヘッドがある時
84 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 07:39:18.17 ID:OFtNpZ320.net] 3.8.5でwin8.1で動くものをwin7に持っていくと、 subprocess.Popenでエラーになって動かない 最新のpythonはそもそもwin7にインストールできない win7で動くもっと新しいバージョンはある? 無い場合は何か解決方法はある?
85 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 07:50:08.35 ID:UKOjKE+50.net] >>84 エラーメッセージは?
86 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 08:01:48.17 ID:OFtNpZ320.net] FileNotFoundError: [WinError 2] 指定されたファイルが見つかりません。 実行しようとしてるのはbatファイルで、.batまで書くとエラーにはならない でもサブプロセスとしては動かなくて、処理はそっちに移行して終了してしまう shell=Trueを付けても同様の動作になる やりたいのは、いつ止まるか判らないコマンドをサブプロセスとして動かして監視すること
87 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 08:08:51.54 ID:+sXFtDSXD.net] Pyの知識以前のWinのシェルの知識だな cmd . exeをスイッチ付きで起動してやればいい
88 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 10:41:55.94 ID:fOs9i175r.net] 3.7だと動くのかどうか 去年ですらopenCVがPython3.8で動かないとか問題になってたなあ
89 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 10:47:38.84 ID:fOs9i175r.net] この辺が時々問題になるから じゃあwheelで取ってくるかと思い pep425とかget_supportedとかやってみたら無くなってる 調べたらutils.compatibility_tagsとかになってた それをふざけてcolaboratoryでやってみたら3.7までしか対応してなかった次第
90 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 11:03:06.60 ID:OFtNpZ320.net] perlだとwin7の時点で既に固まってたので、環境が古くて困ることは無かったけど、 pythonはまだ進化を続けてるので、後方互換性はかなり怪しいな 本番環境側をwin10にしてしまおう
91 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 11:18:00.59 ID:eyeX0xyMF.net] >>84 cmd /K とか shell=FalseまたはTrueかな この辺いい加減に描いてると動かない
92 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 14:17:42.60 ID:ysK9uB2VM.net] >>86 Pythonの違いじゃなくてWin32 console APIの違いの可能性もあるね Console切り離すのは結構version違いが激しい Powershellでも厄介 batをVBで書き直すことを勧める
93 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 14:43:19.89 ID:V+Ekt21U0.net] なぜVBw
94 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 14:54:41.80 ID:ysK9uB2VM.net] >>93 Console切り離すのが簡単なスクリプト言語他にあるかな?
95 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 14:55:39.66 ID:ysK9uB2VM.net] WSHでJavascriptなら簡単なんかな?
96 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 15:07:12.92 ID:OFtNpZ320.net] 問題はbatファイルの呼び出しだったようで、 実行ファイルを直接呼び出すように変更したらwin7でも動いた
97 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 15:46:55.28 ID:bNc9xgI00.net] ぱい
98 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 18:23:50.32 ID:NQkiHUfv0.net] ちゃんとした質問してほしい
99 名前:デフォルトの名無しさん mailto:sage [2021/11/19(金) 22:02:42.25 ID:R6tUvqDP0.net] w
100 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 06:35:11.10 ID:MZWWAxGE0.net] cp932で表せないファイル名のリストを作る cp932にencodeしてみてエラーになったらそれを出力する、という方式なんだけど、 printするとエラーになってしまうので、リダイレクトでファイルにできない 仕方ないので、encoding="utf-8"でopenしてwriteしてるけど、 改行とか付けないといけないし、printで済ませたい printしてもエラーにならない方法とか無いのかな python2ならそのまま行けた
101 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 07:45:20.38 ID:Lukvfxqi0.net] >>100 https://docs.python.org/ja/3/library/functions.html#print >>> f = open(path, 'w', encoding='utf-8') >>> print(*objects, file=f)
102 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 08:24:40.92 ID:MZWWAxGE0.net] cp932のエンコードなんだからcp932でないものは通さない という例外を認めない姿勢は厳密ではあるけど融通がきかないよな 漢字のファイル名も使えるのに、たまに'〜'とか変なスペースとかで 処理できないツールは大抵そういう厳密さで引っかかってる ノーチェックで通してれば処理も減るしツールも使える側に倒れるのに
103 名前:デフォルトの名無しさん [2021/11/20(土) 11:19:01.66 ID:/kqPbqrTM.net] なんとなく筋違いのことを言っているのだけはわかった。
104 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 12:11:56.36 ID:MZWWAxGE0.net] 既にファイルは開いてるんだから、そこにwriteするかprintでfile=を指定するかは、 処理上何も変わらない 知りたいのは、リダイレクトしてエラーにならない方法 os側は何が来ようがそのままファイルにリダイレクトするので、 標準出力に出す時点でのチェックを止めればいい
105 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 13:10:25.59 ID:c6rYoMps0.net] python2でいけて、python3でエラーっていうのがわからない CP932のコンソールの問題なら普通前者で起きると思うんだけど
106 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 13:20:06.78 ID:c6rYoMps0.net] あと、openするときにバイナリ書き込みを指定すれば済みそうだけどな 改行コードもそのままにできるし
107 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 20:33:41.39 ID:MS7q4miD0.net] https://www.pythonic-exam.com/archives/news/python_open_document
108 名前:デフォルトの名無しさん mailto:sage [2021/11/20(土) 20:33:57.35 ID:MS7q4miD0.net] いつ公開するのよ?
109 名前:デフォルトの名無しさん mailto:sage [2021/11/21(日) 12:48:52.72 ID:4kBJkMan0.net] https://qiita.com/righteous/items/c5f6fbf84c98c5a17043 これ全部できる?
110 名前:デフォルトの名無しさん mailto:sage [2021/11/21(日) 13:09:44.82 ID:DbnHICgp0.net] とどらんみたいなサイトに興味があるんですが、統計学とデータ分析どちらの知識が必要でしょうか?。
111 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 04:46:02.24 ID:X0+jYONh0.net] a = ['a', 'b', 'c'] if 'x' not in a: print('hello') #1 if not 'x' in a: print('hello') #2 #1はaに'x'が含まれていない #2は(aに'x'がふくまれている)の否定 この二つは全く同じものだと考えて良いのでしょうか?
112 名前:デフォルトの名無しさん [2021/11/22(月) 07:57:31.23 ID:sf/6XMlW0.net] 同じ
113 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 08:01:58.64 ID:HMeOIS1cM.net] >>111 同じだけど #1 で書けって言ってるみたい https://kazusa-pg.com/python-not-in/
114 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 09:30:17.60 ID:7Z6oy9Mm0.net] 普通に優先順位が不安になるよな
115 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 10:10:59.14 ID:XQq90Aj30.net] CIに必ずいれるしflake8なしでコード書くのは考えられん
116 名前:デフォルトの名無しさん [2021/11/22(月) 12:23:27.94 ID:vmkVXbGEF.net] if a is not None: if a not is None: if not a is None: Python は書き方が一つしかない()っていったのは誰?
117 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 12:28:55.98 ID:8fUDDfEEd.net] 英語文法に強いと#1しかあり得んとなるが 否定文でこけた経験があると、どうしても頭に否定書きたくなってしまう なんなら否定自体書きたくなくなる
118 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 12:42:04.92 ID:7Z6oy9Mm0.net] そこでunlessですよ
119 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 13:10:59.47 ID:z3oVlEgz6.net] if a:
120 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 13:58:34.46 ID:WOttMYR/0.net] 変数hogeに値がある場合はfugaにhoge(の値)を代入したい場合 if文や条件式を使わずに表現する方法ってある? # python hoge = "piyo" fuga = hoge if hoge else "" bashの変数展開みたいな書式ないよね # bash hoge="piyo" fuga=${hoge:-""}
121 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 14:08:40.76 ID:7Z6oy9Mm0.net] orは?
122 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 15:03:17.50 ID:8fUDDfEEd.net] それこそwysiwygの精神に反するってすぐ分かりそうなもんだけどな
123 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 15:12:56.63 ID:PHd8OvUid.net] Python初心者です https://teratail.com/questions/251676 このページを参考にBytesIOを使おうと考えています a = np.load(BytesIO(binary)) このように使った場合、BytesIOは不要と判断されて開放されるのでしょうか? https://docs.python.org/ja/3/library/io.html The buffer is discarded when the close() method is called. とのことで、 stream = BytesIO(binary) a = np.load(stream) stream.close() としたほうが良いのでしょうか?
124 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 15:24:31.25 ID:XQq90Aj30.net] >>123 IOBaseの説明の対比でそう書いてるだけで GCが働くからclose()は必須ではない
125 名前:デフォルトの名無しさん [2021/11/22(月) 15:27:18.74 ID:sf/6XMlW0.net] with BytesIO(binary) as stream: __a = np.load(stream) withブロックを抜けるとcloseされるから安全
126 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:09:57.46 ID:7Z6oy9Mm0.net] withってなんか雰囲気で動いてる気がする
127 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:25:58.98 ID:v4k6kYue0.net] >>121 なるほど、or はこんな動作もするんだな ありがとう
128 名前:デフォルトの名無しさん [2021/11/22(月) 16:37:47.59 ID:2MDgP0Vy0.net] >>120 よくわからんけど その例だったらfuga=f’{hoge}’でもfuga=hogeでも同じじゃないの?
129 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:54:42.37 ID:v4k6kYue0.net] >>128 変数 hoge に "piyo" が入っているのは一例で、 例えば、hoge がもし None だった場合に ""(空文字)に変換されるので、 そのまま文字列(の一部)として出力したいときに使えるようになる
130 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:58:50.36 ID:2MDgP0Vy0.net] あー、hogeが存在してなくてもエラーが出ないのか
131 名前:デフォルトの名無しさん [2021/11/22(月) 19:05:57.15 ID:lkDGIXBn0.net] まあ、自分しか見ないソースならいいけど見ずらくなりそだな、その書き方。
132 名前:デフォルトの名無しさん [2021/11/22(月) 19:36:29.24 ID:5E3QcxihM.net] undefinedに対応できない、Falsyのうっかりとかあるから、褒められる書き方ではないわな。
133 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 20:16:33.77 ID:zjNStOpV0.net] >>124 >>125 ありがとうございます、勉強になりました
134 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 22:48:58.52 ID:XQq90Aj30.net] fuga = hoge if hoge else ‘’ fuga = hoge or ‘’ どっちも’’とか特定の偽しか来ない前提だけど冗長でない分後者を推す 公式にも前者のコード例はたぶんないし
135 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 22:51:07.19 ID:XQq90Aj30.net] ‘’ or ‘’は意味不明やわ。日本語不自由ですまん
136 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 23:21:46.71 ID:7Z6oy9Mm0.net] perlの // みたいなのは無いのかな a // b はaがNoneでなければaを、Noneならばbを返す
137 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 00:17:52.93 ID:Ln8GWMq+0.net] >>120 Ruby では、and/or の遅延初期化をよく使う p a = a || 1 #=> aが未定義のnil で偽なので、右辺が評価されて1 a = 2 p a = a || 1 #=> aが真なので、短絡評価で2。右辺は評価されない p b = b && 1 #=> bが未定義のnilで偽なので、短絡評価でnil。右辺は評価されない b = 2 p b = b && 1 #=> bが真なので、右辺が評価されて1
138 名前:デフォルトの名無しさん [2021/11/23(火) 00:44:36.44 ID:xEN2JBOU0.net] >>136 それ x = a if a else b じゃね? なんか避けたいって言ってるやつ
139 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 01:00:51.66 ID:h5ckzt1c0.net] Noneかどうかで判定したいってこと if a だと0でも空文字列でも偽だから曖昧になりがち if a is not None でぜんぜん困らんけどね
140 名前:デフォルトの名無しさん [2021/11/23(火) 02:02:18.19 ID:4MVUDnE90.net] ヌル合体とか欲しいよねPythonにも、
141 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 02:33:06.96 ID:bb25eqH30.net] PEP505は全く進展ないね 3.10には入ると思ってたけど
142 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 10:09:13.49 ID:OzyPSNUz0.net] 値が入っていることを想定しているけれど、想定外にNoneだった時の為のガード みたいな使い方をしたいんだろうけど、 そういうのは明示的にifとかtryで書いた方がいいよな
143 名前:デフォルトの名無しさん [2021/11/23(火) 10:41:32.64 ID:iYWDXWdAM.net] むしろ気をつけないといけないのは、想定外にTrueになってしまうケースだ。 たとえば、昔のDjangoのUserモデルのis_authenticatedは、プロパティじゃなくてメソッドだった。
144 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:28:59.61 ID:Cd+od5Ii0.net] Noneも曖昧だからね 単なる未定義なのか空集合なのかエラーなのかNoneそのものなのか ディクショナリー検索等でNoneが帰って来る仕様だがどう扱うか
145 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:32:03.52 ID:KM4P0q2w0.net] 結局は>>143 の言うとおりなんよ… 我々はすでに知ってるんよ、中身がNullかどうかに注目した結果 普通にコード書くだけでトライキャッチスパムになってしまうJavaとかいう言語を…
146 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:40:48.37 ID:OzyPSNUz0.net] エラーの情報をちゃんと持ってて、ずっと上流の呼び元までそれが伝わる言語あったな なんだっけ 関数は引数に従って値を返します という前提で普通の言語は設計されているけど、 関数は引数に従って値を返します。返さないこともあります でないといけなかった
147 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:43:00.09 ID:x4PI0/Sq.net] fastAPIのルーティングでデコレータ使わずに app.add_api_route("/hoge", hoge, methods=["GET","POST"]) な感じで分離してやってみたけど、各リクエストメソッドでバリデーションが異なる時に躓いた このまま共通のhogeだと互いのバリデーションclassが422 Unprocessable Entityを引き起こしてしまうので app.add_api_route("/hoge", hoge, methods=["GET"]) app.add_api_route("/hoge", hogePost, methods=["POST"]) みたいにして新たにhogePost追加するという書き方に。 かと言ってデコレータ使うと @app.get("/hoge") def hoge(): @app.post("/hoge") def hoge(): みたいにせっかくのルーティングの分離管理が二度手間かつ無駄に というジレンマ デコレータ使わない場合 >新たにhogePost追加する というのが無難なのだろうか・・
148 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 15:02:56.49 ID:Vfqk4Xs70.net] validator 内で GET/POST 区別したら?
149 名前:デフォルトの名無しさん [2021/11/23(火) 15:18:14.11 ID:nqaaqo53M.net] app.add_api_route("/hoge", hoge, methods=["GET"]) app.add_api_route("/hoge", hogePost, methods=["POST"]) これでいいんじゃね。関数として分けておけば、 validatorもデコレータ(ファクトリ)にしてみたり、いろいろ柔軟にできる。 @validate('GET') def hoge() @validate('POST') def hogePost()
150 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 16:09:24.71 ID:x4PI0/Sq.net] >>148 今はpydanticなvalidor使ってるけどクラス変数の評価前に区別する方法があったりするのだろうか >>149 うんとりあえずはそんな感じでリクエストメソッド分だけ用意することにした d
151 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 00:31:29.22 ID:9nGxCHAd0.net] ★★★★★ 会話をすればポイントが増えてアイテムを買える。 次世代の大型掲示板、メルプラネット。 https://merpla.net/boards/
152 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 04:45:08.04 ID:ZcuSX9hJ0.net] >>144 かと言って最初からOption型やmaybeモナドでライブラリ構成されてもウザいしね
153 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 15:08:35.99 ID:lCK/bdd80.net] 名前と数値がセットになったような内容を扱う時、 セットにしただけのclass作る?
154 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 18:01:26.90 .net] キーと値がセットになった各値をどう扱うかによって インスタンス化するか、辞書にとどめておくか、ライブラリ使うか 変えるかなぁ
155 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 21:37:03.97 ID:YZcLPgmZ0.net] >>153 自分だけしか使わないならダラダラ書くけど 引き継ぐ可能性がある場合はクラスにしといた方がメンテしやすいんじゃないかと思ってる
156 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 22:14:50.32 ID:lCK/bdd80.net] リファクタリングの本読んでて、オブジェクト指向の初心者は 小さなオブジェクトを使うのを嫌がる的なことが書いてあって、そんなもんかなと
157 名前:デフォルトの名無しさん [2021/11/24(水) 22:49:34.83 ID:Ph9UZvc+0.net] 通常そういうデータってどっかのクラスのメンバ変数で辞書かnamed tupleじゃねえか? keys:names のみのクラスってどういう状況であり得る?
158 名前:デフォルトの名無しさん [2021/11/25(木) 00:14:54.89 ID:Mg+a9DvFa.net] 集計目的ならdefaultdict
159 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 06:32:01.73 ID:kAK1JHHz0.net] >>157 通常と言われてもなあ
160 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 07:36:38.15 ID:1AK1NI0N0.net] ただの名前であってキーとは言ってない 重複のない保証はない name[i]とval[i]で管理したいところ valでソートをかける classにせずとも余裕でやれる やれるけど?
161 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 07:55:54.60 ID:wc50HyKuM.net] ただの名前をキーと言う奴はもれなくアホだと思う
162 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 09:04:00.52 ID:kAK1JHHz0.net] >>160 じゃあその組を管理するRDB風のクラスがいいんじゃないの? #セットという言葉の使い方が気になる
163 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 09:23:53.44 ID:1AK1NI0N0.net] いいんじゃない、の加減なんだよな しなければならない / 是非するべき / した方がいい / しなくてもいい / しない方がいい / しない そのへんの温度感が経験で違うのだろう
164 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 20:45:55.13 ID:wc7annti0.net] urlopen()をwithで取得してwithを抜けると何が起きるの?
165 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 20:48:58.06 ID:s3jo07500.net] シメられる
166 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 22:16:46.96 ID:nRTAMUqI0.net] https://docs.python.org/ja/3/library/urllib.request.html#urllib.request.urlopen > HTTP および HTTPS URL の場合、この関数は、わずかに修正された http.client.HTTPResponse オブジェクトを返します。 class HTTPResponse(io.BufferedIOBase) で__exit__()はオーバーライドされてないから受信データにアクセスできなくなるだけ。 意図してる通りだろうけど > より高水準のHTTPクライアントインターフェースとして Requestsパッケージ がお奨めです。 だし、説明が追加されることはなさそう。
167 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 22:30:51.87 ID:wc7annti0.net] 何かのリソースが自動で開放されるとかではないのか
168 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 18:48:32.12 ID:Ce5RxaUa0.net] pygameってみんな使ってないのか? せっかく二冊ほど読み終えたのに動かそうと思ったら 3.8じゃうごかないとか言われて途方に暮れてるんだが・・・ すなおにゲームはunityつかえってことか・・・・
169 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:23:42.37 ID:QJDif1Cg0.net] ?
170 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:29:31.81 ID:IgXLbzKoM.net] >>168 たくさんあるから Python ゲームエンジン で検索して目的に適してるのを選べ
171 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:45:13.67 ID:JJsR/G8Z0.net] pygameでmidiが取り扱えるんだよな ハノン弾いてリアルタイムで正確さを表示したら面白いと思って ずっと前に作りかけて放り出してある 今ならすぐ作れそう
172 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:54:52.11 ID:i0YnXTZB0.net] pygame、3.8.10で動くけど?
173 名前:デフォルトの名無しさん [2021/11/27(土) 23:14:16.59 ID:bPwHecSK0.net] pygame2やれ
174 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 00:16:01.67 ID:0Kkbs8iXM.net] >>173 公式によれば3.9も ただメインテナンスはやや停滞なんかね
175 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 00:55:05.96 ID:YY1hk1pY0.net] 色々試したらうごいたわありがとう レースゲーム動かせるわ
176 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 00:55:37.48 ID:YY1hk1pY0.net] 普通にpipでいけたよ
177 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:18:19.48 ID:swBDA3nq0.net] Pythonエンジニア認定試験のことってここでも大丈夫ですか?
178 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:26:25.30 ID:6NVlX2It0.net] pythonが使いこなせるかどうかの能力なんて、 各種ライブラリのことをどこまで知ってるかだからなあ 言語仕様の部分はすぐに全員カンストするから差が出ない 標準ライブラリに限定して問題作ると、もっと便利な方法があって現実的でなくなる
179 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:39:22.33 ID:o94Sh6rb0.net] そうだね そもそもpython自体は簡単だし ライブラリを使いこなす知識の方が重要だよね 認定試験無いよりはマシだろうけど 認知度が低いから結局試験の内容を説明しないとイケないんだよな 情弱処理持ってる方が話は早い
180 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:46:54.78 ID:6+AWQcj90.net] >>177 とりあえず質問してみたら?
181 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 14:43:59.37 ID:6NVlX2It0.net] 改行区切りで書かれたファイルがあって、これを改行無しでリストに読み込みたい そして、リストを改行区切り形式でファイルに書き出したい 内包表記で改行を削って、書く時にはjoinで改行付けるとかすればできるけど、 もう一段スマートにやれないかな
182 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 16:14:46.54 ID:TzUvGqBa0.net] フツーにforで回してprintするだけじゃん
183 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 16:22:25.89 ID:6NVlX2It0.net] 読み込み側は、 f.read().splitlines() ですっきり書けた この逆をする関数があればいい リストの各要素を改行で区切って文字列に変換するような関数 ってそれは単にjoinの特殊ケースに過ぎないから、無いのも頷ける
184 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 17:25:05.50 ID:/1mvnnK50.net] 頭悪そー
185 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 17:39:15.04 ID:6NVlX2It0.net] あるべき姿はpickle でもテキストエディタでも開きたいので、jsonとかyamlとか それでも編集しにくいので、どうせリストだしと改行区切りまで落とすと、 スマートな手段が無くなる
186 名前:デフォルトの名無しさん [2021/11/28(日) 17:57:10.63 ID:9rjB7eJM0.net] 自分でjsonEditor作るのは面白いよ。中級クラスのレベルかな。 データも list >> dict >> dict >> list >> list >> dict >>int 見たいにnest構造になってるから編集しようとすると、そこそこ扱いも難しいし。 画面構成から考えれば、いい練習問題になるよ。
187 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 19:57:15.81 ID:Wh0Bw3X30.net] >>180 ありがとうございます! Pythonエンジニア基礎認定試験を受けようと思うのですが、 スッキリわかるPython入門を導入書として使ってからPythonチュートリアルをしようと思うのですが、同じように勉強して合格された方はいますか?
188 名前:デフォルトの名無しさん [2021/11/28(日) 21:05:28.72 ID:jvvYPFKj0.net] > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^ あー、ホンッとに思い出すなあ(笑) キチガイの嘘つきの低レベルFランの、 朝鮮ゴキブリBot君は、 チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な ことはよーくわかったよ。 ホントなにもできない朝鮮ゴキブリBot君! クソチョンw クソチョンはウンコを食べる糞食人種w ゲリ便をじゅるじゅると うまそうに食ってるw
189 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 23:19:25.63 ID:SJI7MgMY0.net] >>181 Ruby なら、配列を出力するだけで、改行区切りになるけど ary = [ "ab", 1 ] puts ary 出力 ab 1
190 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 23:28:07.54 ID:6NVlX2It0.net] perlだとこんな感じ デフォルトはスペース区切りなので改行に変更 @a = (ab, 1); $" = "\n"; print "@a";
191 名前:デフォルトの名無しさん [2021/11/29(月) 02:28:05.31 ID:Tbj9SxrO0.net] >>181 writelines()じゃね? https://techacademy.jp/magazine/28281
192 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 06:26:32.46 ID:8tyLAOgdM.net] >>191 writelines(lines) 行区切り文字は追加されないので、書き込む各行の行末に行区切り文字を含ませるのが一般的です。 https://docs.python.org/ja/3/library/io.html って書いてあるからダメでしょ そもそもそのリンク先 text = [ "メロンn", "イチゴn", "みかんn", "スイカn", "ぶどうn" ] なんて書いてる時点で信用できない
193 名前:デフォルトの名無しさん [2021/11/29(月) 09:20:02.45 ID:LowbA3aSH.net] テックアカデミー(笑)
194 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 09:26:34.67 ID:LcIxau/K0.net] pythonの裾野の広さを感じさせてくれるサイトだよな
195 名前:デフォルトの名無しさん [2021/11/29(月) 11:03:42.15 ID:uzcK9QD5a.net] Perlの文法も気持ち悪いな。 シェルスクリプトかよ。 Pythonのやり方はJavaかC++からの輸入だな。
196 名前:デフォルトの名無しさん [2021/11/29(月) 11:04:55.76 ID:Tbj9SxrO0.net] >>192 ダメじゃねえかwすまんこ
197 名前:デフォルトの名無しさん [2021/11/29(月) 11:29:59.53 ID:FdW61dzG0.net] >>193 クソのくせにやたら検索に引っかかってくるからウザイ
198 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 11:37:52.94 ID:pAg5RKMOd.net] テックアカデミーと侍は中学生に書き直させた方がまだ読めるようになるレベルのゴミ
199 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 11:46:02.57 ID:FVbxGJ7fM.net] readlinesやwritelinesで改行コードを扱う方法を提供しないのがPythonクオリティー テックアカデミーをバカにできない
200 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 12:00:17.47 ID:7wd93ooE0.net] 日本語の技術サイトはろくなのがない印象 Pythonに限らないけど
201 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 12:04:08.22 ID:pAg5RKMOd.net] 昔はインスタントPython、インスタントハッキングがjpy公式にあったから そこで初心者は学習できた あと結局pythonは公式ドキュメントとライブラリーリファレンス読み込むことで大抵の問題は解決する 個人的な問題を解決したかったらそれなりにキャリアのある個人ブログ探すのが安定する
202 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 12:16:52.32 ID:BKJFnTwg0.net] >>195 Perlはシェルスクリプトの置き換えが目的そのもので順当 PythonはLuaのようなアプリ内スクリプティングな応用が当初多かったし 記述が簡便なのが特徴じゃない?なんで所々厳格でなくて歪なのが残念な点 というかJavaとは同世代だし
203 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 23:18:44.84 ID:f/Sm4Tcj0.net] Python は、改行コードがめちゃめちゃ難しい。 global newline みたいに自動的に、OS に合わせて変換してくれる、機能はないのか? Ruby では簡単なのに
204 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 23:25:16.24 ID:LcIxau/K0.net] 入力はどんな改行が来てもちゃんと読んで、 出力は今動いてる処理系に合わせて出力すれば、それで問題ないのでは
205 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 23:33:33.84 ID:BKJFnTwg0.net] コード上改行はLFで統一できてる。 何も指定せずテキストモードでopenしたらCRLF→LFの変換はしてくるし Windowsコンソールに出力したらLF→CRLFも透過的に行う。 バイトストリーム用にos.linesepも用意されてる。
206 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:02:42.47 ID:uWG/s7m50.net] \nってCRLFのことだと思ってた
207 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:03:41.68 ID:1Yo8WetK0.net] 円得ぬ
208 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:04:10.45 ID:TlXezoe70.net] どなたか >>187 をおねがいします!
209 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:24:38.24 ID:uWG/s7m50.net] まともな検定だったら、本だけ読んで通ると思えない
210 名前:デフォルトの名無しさん [2021/11/30(火) 06:39:04.04 ID:oWvAOz19M.net] >>205 自動なのがかえってめんどくさい。
211 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:49:20.24 ID:uD8YTZMG0.net] >>208 いますよ
212 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:52:03.48 ID:uPKcxb4Vd.net] >>211 ありがとうございます! Pythonチュートリアルを読む前の参考書はどんなのを使われました?
213 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:02:57.59 ID:uD8YTZMG0.net] >>212 ダラダラ質問小出しにされるのはウザいのでまとめて
214 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:09:37.62 ID:uWG/s7m50.net] インタプリタなので仕方ない
215 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:17:14.56 ID:uD8YTZMG0.net] じゃぁリストかタプルでちょうだい
216 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:35:53.88 ID:uWG/s7m50.net] なんでリストが[]でタプルが()なんだろうな 一番使うものが一番普通な方が収まりがいいのに 辞書が{}なのも、別に[]を使っても中にkey:valがあったら辞書と判るのに 中身が無い時に区別付かないけど、そのくらい何とかなるだろ
217 名前:デフォルトの名無しさん [2021/11/30(火) 08:13:31.92 ID:JFviu3vk0.net] 確かに辞書とsetは同じ{}だしな
218 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 08:51:28.65 ID:XgdAJwDY0.net] >>207 '\n'がlength 1 string objectであると理解できてないのではないか またCの'\n'も理解できてないのではないか 逆にCでのstrlen(”\n")の値とか
219 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 08:59:45.37 ID:XgdAJwDY0.net] >>217 これまでの言語の慣習に合わせただけでは? またそれは重要だろう
220 名前:デフォルトの名無しさん [2021/11/30(火) 09:29:09.44 ID:BeJPAIX2r.net] >>216 タプルは()、は少し違うな 正確にはカンマがタプルを生成する a=1,2 もタプルになるから
221 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 09:39:37.84 ID:uWG/s7m50.net] [1,2]は?
222 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 09:44:19.36 ID:aruulzL70.net] >>212 みんなの
223 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 09:56:24.48 ID:kiCF8ukr0.net] 受験料高いのね 落ちたらまた受ければいいやんと思ってた Python 3 エンジニア認定基礎試験 一般価格 11,000円(税込) 学割価格 5,500円(税込)
224 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 10:11:17.27 ID:H2NDp+pi0.net] 会社から報奨金でもでんかぎり勉強だけして試験受けないのも手 分野にもよるがまだAWS/GCPの認定や情報処理とったほうがまし
225 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 10:38:38.92 ID:aruulzL70.net] 取れるなら取っとくのがいい
226 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 11:14:18.22 ID:kiCF8ukr0.net] 認定で得られるメリット > 受験料 ってこと?
227 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 11:18:02.71 ID:PY+WseMod.net] java金とかオラマスよりは良心的 しかし内容によるな
228 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 11:32:23.65 ID:aruulzL70.net] 取る/取らないで悩むことがなくなる。それだけ
229 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 11:48:15.66 ID:QYuq9tUEM.net] netmikoというライブラリを使って ネットワーク機器のログを定期的に取るようにしてるんだけど、 そのログの任意の行にある値が閾値を越えたらslackに通知させる 仕組みを作りたいんだ。 どっか参考にできるサイトない?
230 名前:デフォルトの名無しさん [2021/11/30(火) 13:06:16.43 ID:q2Lbl4Ky0.net] pyエンジニア試験はゴミだぞ 古典的な教本商売。無価値 名札が欲しい、とか、仕事で言われたとかなら仕方ないけど
231 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 13:18:14.78 ID:uWG/s7m50.net] E501 line too long ってちゃんと直してる?
232 名前:デフォルトの名無しさん [2021/11/30(火) 13:39:36.66 ID:OYiX8qDe0.net] 応用技術者試験って意味ありますか? 昔受験して一応合格したのですが、あんな試験にパスしたからといって、実務には全く役に立ちそうにありません。 IT関連の実務は経験したことがありません。
233 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 13:54:40.00 ID:kiCF8ukr0.net] >>232 ド素人でないことの証明にはなる 資格欄に書いた方がいい
234 名前:デフォルトの名無しさん [2021/11/30(火) 14:02:00.50 ID:6g3UGVsgH.net] 実務経験ないのに実務に役立ちそうにありません、とな もう少し考えてから釣り糸たらせよボンクラ
235 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 14:07:37.43 ID:OYiX8qDe0.net] 例えば、ネットワーク関連の問題が応用情報技術者試験には出題されます。 ネットワークをいじったことすらありませんが、試験の問題は簡単に解くことができます。
236 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 14:28:57.07 ID:PY+WseMod.net] >>234 人売りのシャチョさんこええw 使えねぇもんは使えねぇんだわ
237 名前:デフォルトの名無しさん [2021/11/30(火) 15:02:04.18 ID:TfmLZpQ00.net] youtubeでラズパイをpythonで制御できる。って動画をみて面白うそうだなって思ったけど。。 真剣に考えるとやることがないww LEDをフラッシュさせてもしょうがないしねw
238 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 16:29:17.49 ID:PY+WseMod.net] ラズパイ買うときはセンサも買え なんでもいいからいくつかの種類買っとけ
239 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 16:44:07.81 ID:EQaczNMQ0.net] LEDをフラッシュ楽しいじゃん
240 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 17:02:52.22 ID:jOio/b0h0.net] >>238 ちっちゃいモニターもな これがあるとないじゃ全然違う
241 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 17:19:13.85 ID:5Q9goXwA0.net] 普通は受かるんだろう
242 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 18:21:51.55 ID:kiCF8ukr0.net] 世の中には頭の悪い人がたくさんいる ・簡単な計算ができない ・文書が理解できない 応用情報だけでもヤバイ人達との差別化にはなる
243 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 20:49:57.78 ID:jJXnE01Z0.net] >>229 slack webhook requestsで検索するとヒントが出てきそう
244 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 20:51:58.08 ID:Yy84c4aHa.net] >>242 それはあるかも 考える事が出来ない人って結構いるんだなと仕事し始めてから知った
245 名前:デフォルトの名無しさん [2021/11/30(火) 21:08:34.16 ID:JFviu3vk0.net] 「半分の人間は中央値以下」 バカみたいな文だが忘れがち
246 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 21:11:58.36 ID:uWG/s7m50.net] 中央値ってなに?
247 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:08:35.06 ID:NQxcoDS50.net] 順番に並べた時に一番真ん中の値
248 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:10:40.94 ID:uWG/s7m50.net] 「半分の人間は平均値以下」 と言っとけば、なるほどなーうまいこと言うな と評価を得られたものを、厳密さに拘って機会を逃す
249 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:12:15.69 ID:NQxcoDS50.net] 半分の人間が平均値以下とは限らないぞ少し頭使えw
250 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:16:13.42 ID:5tXmj9hK0.net] 中央値知らない人だから仕方ない
251 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:37:05.55 ID:NQxcoDS50.net] まさに中央値以下側の人間だなw
252 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:46:36.86 ID:uWG/s7m50.net] あんまり統計的に意味がある数字じゃないよな 平均値を避けるということは標準偏差ではないと判ってるんだから、 歪度とかの情報も無いと乱暴すぎる
253 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:52:42.79 ID:Vh3EpRff0.net] 上から埋まっていく分野では重要
254 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 22:54:30.10 ID:5Q9goXwA0.net] 釣鐘状の分布していないときに重要
255 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 23:07:37.57 ID:n7GuuI4Q0.net] 平均値でも中央値でもいいけど そのレベルの人の能力が分からないので そもそも議論にならない
256 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 23:30:12.90 ID:5Q9goXwA0.net] 別に議論に加わらなくても良いですよ
257 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 00:32:10.74 ID:cGPzHP040.net] 統計検定3級おすすめ データ分析の議論に参加できる最低ラインの保証になる
258 名前:デフォルトの名無しさん [2021/12/01(水) 00:42:15.22 ID:X46if3HQ0.net] >>252 ロバスト統計ってご存知無い?
259 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 01:33:15.78 ID:J8+WBzZ00.net] 山本太郎の「れいわ」が躍進したのは、 25年の自公政権で、所得の中央値が108万円低下したことを、暴いたから 世界中で全体未聞の、GDP が上がらなかった国。 ほぼ全員を貧乏にした与党 消費税のほとんどが、福祉に使われなかった。 法人税の穴埋めに使われた でも、こういう事を知らないから、選挙では自公が圧勝する
260 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 02:17:03.28 ID:6ah9oYXi0.net] >>252 中央値なんて中学校の数学で習うもの知らないやつが >あんまり統計的に意味がある数字じゃないよな は草
261 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 03:17:11.02 ID:+DdWHpjG0.net] >>259 よくわからん 知ったのか知らないのかはっきりしなよ あとスレ違いだからよそでやって
262 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 09:34:10.31 ID:pw8MGucb0.net] 配列の範囲外を参照したら0を返してくれたら楽に書ける 初期化してない変数は0や空文字だとしたい そういうのは許さないのがpythonの思想なんだろうけど、 クラスライブラリとか、「よく判らんけどいい感じにやってくれる」に満ち溢れてると思うんだよな
263 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 09:49:40.77 ID:kOoI/dimd.net] さすがに初期化してないのに0で返ってきたら違和感ありすぎる その0どこのやつやねん
264 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 09:53:13.32 ID:jmLWjGmX0.net] listを継承したsafelistでも作ってsafelist.get()すればいい
265 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 10:43:06.24 ID:cGPzHP040.net] numpy.zeros(m, n) じゃダメなのか sparsityによるけど
266 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 10:53:16.07 ID:kOoI/dimd.net] なんていうか、出来るからといって 何でもやっていいわけではないよな…? 型宣言して型無視したり、変数名と全然違う振る舞いのコードもかけるけど やっていいかどうかを現場で議論してるんだよな?
267 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 11:08:20.51 ID:+DQyoA+ZD.net] >>248 「半分の人間は平均値以下」 この命題は偽だぞ 90,80,85,30 この4つの数値の平均は71.25 平均値以下は1つ
268 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 11:13:00.90 ID:+DQyoA+ZD.net] 中央値に意味が無いと言えるのは中央値と平均値の乖離が小さい場合くらいで、 そんな状況はほぼない 日本全体の平均年収が436万円であるのに対して、日本全体の年収の中央値は370万円 これの意味分かるか?
269 名前:デフォルトの名無しさん [2021/12/01(水) 11:49:03.99 ID:kM+Jjoc8M.net] > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^ あー、ホンッとに思い出すなあ(笑) キチガイの嘘つきの低レベルFランの、 朝鮮ゴキブリBot君は、 チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な ことはよーくわかったよ。 ホントなにもできない朝鮮ゴキブリBot君! クソチョンw クソチョンはウンコを食べる糞食人種w 朝鮮人はゲリ便をじゅるじゅると うまそうに食うw
270 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 12:03:11.43 ID:Qw3lWQwKr.net] >>259 Ruby氏は政治も語るのか 自分でRailsサーバー建ててそこでやってくれ ここの本来の住人がやると、Djangoで作る
271 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 12:29:23.91 ID:Jc7L6V7f0.net] 統計は正しく使わないと意味のある結果を導き出せない 知らないで使えば無知だが 知ってて使わないのは詐欺だ
272 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 13:20:47.75 ID:kQMiQMSXa.net] お前らほんとフワフワした話しかしねーのな
273 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 13:51:51.48 ID:UViZzx3L0.net] バシッとお願いしやす
274 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 14:00:04.80 ID:kOoI/dimd.net] Noneをゼロでキャッチするガイジは死ね
275 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 17:08:27.52 ID:cGPzHP040.net] 「意味がない」「正しい」 会社でこんな曖昧な表現使ってる人見たことないわ
276 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 17:48:31.00 ID:CUbfchye0.net] >>263 DSPとかの飽和モードってそんなんだから まぁ需要はあるんじゃね? アセンブラ以外で実装した言語を見た事が無いから実装はされないと思うけど
277 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 18:05:55.99 ID:AaatEAJta.net] 配列はみ出してるのにそのまま処理続行されるとか悪夢でしか無い
278 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 20:10:29.91 ID:lzZen0h80.net] 世の中には3種類の人間がいる 数を数えられる人間と、数を数えられない人間だ
279 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 20:15:58.72 ID:pw8MGucb0.net] モンティ・パイソンのスペイン宗教裁判 NOBODY expects the Spanish Inquisition! Our chief weapon is surprise...surprise and fear. 単数で始めたのにandで繋げてしまって文法が破綻する、という部分が面白いのに、なかなか伝わらない Our two weapons are fear and surprise...and ruthless efficiency. 言い直して複数形にしたけど、わざわざtwoを付けて3つ言うという部分はもはや惰性
280 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 20:22:16.08 ID:vhG+/afG0.net] まったくわからない
281 名前:デフォルトの名無しさん mailto:sage [2021/12/01(水) 22:31:02.94 ID:toM1ybPg0.net] >>252 標準偏差→正規分布、の間違い? 結構統計や確率分布も勉強すると面白いよ。 積率母関数はラプラス変換で、特性関数はフーリエ変換とかね。
282 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 02:22:32.97 ID:hQPCDoBz0.net] >>263 バカは書き込まないで
283 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 10:12:40.87 ID:ItDkB8ePd.net] どうせJavaScriptでへんな自信付けてココに迷いこんだ口なだろうけどな
284 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 16:31:50.86 ID:MTUgHWqu0.net] Pythonプログラマは年収が高いから魅力的なのかもな
285 名前:デフォルトの名無しさん [2021/12/02(木) 17:15:47.74 ID:OJ+Rt/5p0.net] Pythonを使った機械学習の本を読んでいます。 仮想環境を使うことを強く推奨すると書いてあります。 いままで、AnacondaのPythonを使ってきましたが、仮想環境を一切使ってきませんでした。 今から、仮想環境を作ってそれを使っても何も問題はないですか?
286 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 17:23:53.03 ID:Z+Ui9JYG0.net] ライブラリのバージョンやらで混乱するくらいなら、最初から専用環境作れということでしょ そっちのがめんどくさいと思うけど、仕事なら仕方ない
287 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 17:29:59.68 ID:OJ+Rt/5p0.net] >>286 ありがとうございます。 趣味でやっているだけなので、必要性が実感できません。 仮想環境を作るとしても結局、最新のライブラリを使っていくだけになるのは目に見えています。
288 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 18:42:51.17 ID:wokKeEK2a.net] 趣味なら自分で必要になってから考えたらいいんじゃね
289 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 18:48:50.53 ID:OJ+Rt/5p0.net] >>288 そうすることにします。ありがとうございました。
290 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 19:45:26.75 ID:KxC58LYE0.net] >>284 因果関係がおかしいんだけどな。 プログラミングスキル以外が高い人(たとえは科学技術スキルやデータサイエンススキル)が、参入障壁が低いpythonに群がってるだけであって、pythonだけできたって仕方ない。 OpenCV,TensorFlow,Pytorch,jax,scipy,sclkit-learn,numpy,pandasあたりが使える人が年収高いというだけで、 それはPythonだけできても使える話ではない。 RDBや数学、統計の知識が必要なのだから。
291 名前:デフォルトの名無しさん mailto:sage [2021/12/02(木) 19:52:09.42 ID:Z+Ui9JYG0.net] 稼いでる人はGoを使ってる
292 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 07:16:52.31 ID:9BdS8doY0.net] マルチコアを活かしてくれないツールを高速化する為に、 複数を非同期で同時に走らせたい ただ、無制限に subprocess.Popen すると負荷が100%に張り付いてやばいので、 同時起動数の上限を設定したい で、まあpoll()がNoneかどうか見ながらsleepしながらで動くんだけど、 同じことをやりたいケースがちょこちょこあるので、自前ライブラリ化を考える でも、そんなもんは既に誰か作ってるのでは? という気がするんだけど、どっかにある?
293 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 08:38:51.44 ID:mlmp5wts0.net] オーバーヘッドを気にしないなら multiprocessing.pool.Poolで任意サイズのプロセスプールを作ってそこからPopenする threadingにも用意して欲しいんだが, 残念ながら無い あとFutureでよければThreadPoolExecutorもワーカー数を指定できる こちらはスレッドベースだ
294 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 09:23:02.26 ID:9BdS8doY0.net] やっぱりそのへんになるよね たすきに長すぎな感じで、そこまで高度なことをしたい訳でもない IOがネックになるからそこで詰まらないように並列処理したら効率的になるだろう、という思想だけど、 もっと原始的な、4コアあるのに1コアしか使ってないじゃんというレベルで、ネックの場所が違う
295 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 11:23:24.64 ID:7z17o3pC0.net] GNU Parallelとか
296 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 14:38:02.37 ID:gYFV44kc0.net] ProcessPoolExecutor?
297 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 16:07:39.39 ID:9BdS8doY0.net] 100個のファイルに処理1を実行して、次に処理2を実行して、という場合、 並列でやるとしても処理1が全て完了してから処理2に取り掛かった方が安全で、 それは割と簡単にできる 処理順の依存関係まで指定してえいやっと全部一気に渡すと、済んだ人はどんどん先に進める方式だと、 効率最大でやってる内容は魔法みたいになる キューに入れてもいいタイミングはユーザが判断してね方式だと、そんな怖いことはやりたくない このへんの技術はとっくに枯れてる訳でもなくて、pythonのバージョンが上がるにつれて よりシンプルに書けるようになってるっぽいので、いちばんいけてる奴だけ使いたい
298 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 16:50:15.61 ID:MOk0xQBVd.net] >>297 よくわからんけど機械学習系のタスク管理ライブラリを当たってみるのがいいのでは
299 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 16:52:43.40 ID:oOU/CY6L0.net] >>297 >並列でやるとしても処理1が全て完了してから処理2に取り掛かった方が安全で、 なんで安全なの? ファイル間に依存性があるのかな?
300 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 19:20:43.02 ID:TcDlgZdP0.net] 使いこなせないから知らないけど 非同期処理ときたらasyncioじゃないの?
301 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 20:06:27.61 ID:ilrP3hOYa.net] 管理面倒だからそいうのはcelery使ってるわ
302 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 20:13:17.59 ID:d1yD6wdJM.net] キューが空いたら依存関係見て依存してる処理が全部終わってる処理を検索してキューに入れるだけだろ 枯れてないとか意味わからん
303 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 21:05:26.85 ID:9BdS8doY0.net] 依存関係はケースバイケースすぎて処理1と処理2が終わってないと処理3ができない、 みたいなのは p3(p1(), p2()) みたいに引数の関係で書いて、それがうまい具合に遅延して評価されればいい その時点で結構凄いことだけど、処理10まであって、 p10(p9(p8(p7(p6(p5(p4(p3(p2(p1( って書くのかと思うと、それも嫌 そのへんは既に解決済みでもっとかっこよく書けるらしいけど、理解できてない
304 名前:デフォルトの名無しさん mailto:sage [2021/12/03(金) 21:31:34.82 ID:nYt0d+Tj0.net] 記述は依存している隣同士の関係だけでいいやん それを動的に解釈していくか全展開するかはプログラムの中の話
305 名前:デフォルトの名無しさん mailto:sage [2021/12/04(土) 13:56:24.80 ID:OXNHy6KQ0.net] デフォルトは自動で0になってて欲しい系の代表は defaultdict だな pythonをperl化してしまう悪魔のモジュール いわゆるautovivification 声に出して読みたいプログラミング用語
306 名前:デフォルトの名無しさん mailto:sage [2021/12/04(土) 14:43:09.92 ID:clmSwDt/0.net] defaultdict() 引数なしで0はドキュメンテーション上ひどいけど defaultdict(0) callableじゃない引数ならcopy()する動作でもとは思う
307 名前:デフォルトの名無しさん [2021/12/05(日) 22:33:04.61 ID:69iYFx7F0.net] 東熱でデビューまだ?
308 名前:デフォルトの名無しさん mailto:sage [2021/12/05(日) 22:50:01.39 ID:gzedxBTO0.net] tipsとか説明してる動画がいろいろあるけど、 どう考えても動画で見るよりも文字のサイトで見た方が効率いいな アニメーションで説明するならまだしも、コード映して音声で説明するだけだし
309 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 09:58:30.45 ID:bmhBnFtY0.net] その通り でも見るより聞くほうが頭に入るっていう人はいる そして動画なら普通は飛ばされるちょっとしたエラーへの対応なんかも映されてたりしていい そういう意味じゃまぁまぁ分かってるぐらいのやつが試行錯誤しながらやってる動画が一番いいかもしれない動画なら それと小技100選みたいなのは動画のほうがサクサク見れていいなって思った
310 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 10:16:07.53 ID:K9NwbhKq0.net] 動画はチュートリアル向きだね
311 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 10:24:06.22 ID:r+k7u56QM.net] 仮に多少わかりやすかったとしても時間効率が悪すぎる
312 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 10:25:23.41 ID:KAUrNTmh0.net] ん、今のとこ理解が追いついてない と一時停止するのはまだいいとしても、 そこはもう判ったからくどく言わなくていい、 という部分だけ早送りするのは困難
313 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 13:10:34.16 ID:Fv6sj5de0.net] いわゆる 教育サイトのヤツって制限つよいから使えんな YouTubeのが倍速できていい
314 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 13:35:16.73 ID:bFLz1Hfed.net] Udemyは倍速できた 開講者によって違うのかもしれんけど
315 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 15:04:28.27 ID:V3VnXKsr0.net] python始めたての頃、日本語でpythonを解説してる動画があったんで見てみたけど、 内容の良し悪し以前にタイプ音が耳障りすぎて見てられなかったな カチャカチャ…ッターン!!ってまんま昔のミサワの画像みたいな
316 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 17:57:42.22 ID:fIaDMlsG0.net] こういうプログラム組みたい、みたいなのはここでもいいのですか?
317 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 18:55:42.20 ID:K9NwbhKq0.net] Pythonが主題ならいいよ
318 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 19:03:22.19 ID:fIaDMlsG0.net] python **.sy ディレクトリ1 ディレクトリ2 としてコマンドライン引数2個を使い ディレクトリ1から特定条件のファイル・ファイルサイズを抽出し 外部プログラムを利用して処理しディレクトリ2の場所にファイル名でフォルダを新規作成しそこにアウトプットしたいのですが これは難しいですか? 半日かけて色々こねくり回してもファイルを抽出するところまでしかできませんでした
319 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 19:11:53.57 ID:4dOWqmq10.net] いいよ
320 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 19:14:31.95 ID:KAUrNTmh0.net] どうせなら入力用と出力用は順不同でいけるように、-i -o オプションとか付けよう
321 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 19:16:54.93 ID:YFGCwo230.net] Pythonを先週から使っててORMのdatasetを試してみてるんですけど、 find()に WHERE `hoge` > 10 相当の条件って指定できるんですか?
322 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 19:40:42.62 ID:+xtv5Wsa0.net] >>321 https://dataset.readthedocs.io/en/latest/queries.html 公式サイトみてる? 非公式のまとめサイトはあくまで公式サイトを補完するもの
323 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 20:13:19.50 ID:YFGCwo230.net] >>322 やさしいのぅ。有難うございます。
324 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 21:04:00.66 ID:AXyP6TkQa.net] シンプルなORMないかなーって色々触ってみるけどあれこれ機能が足りず結局SQLAlchemyになっちゃうよな
325 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 21:10:58.44 ID:JyBQF4AA0.net] >>318 難しくない。shutilかな。
326 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 21:33:56.87 ID:fIaDMlsG0.net] >>325 できればヒントやサンプルをいただけませんか
327 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 21:42:01.16 ID:K9NwbhKq0.net] ヒント : subprocess
328 名前:デフォルトの名無しさん [2021/12/06(月) 22:13:57.72 ID:rLSBlzT30.net] >>326 やろうとしてることを段階的に分けて書いてみて
329 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 22:22:51.24 ID:fIaDMlsG0.net] >>328 1.ファイルの入ったフォルダをコマンドライン引数1に設定する 2.フォルダ内から特定の拡張子かつ一定以上のファイルサイズのものを抽出する 3.抽出したファイルを外部ツールにかける 4.外部ツールにかけた結果をコマンドライン2引数のディレクトリ内に展開する 5.フォルダは4の指定ディレクトリ内にファイル名で新規作成する こんな感じです for + os.walkとendswithでファイル一覧を抽出できてもその抽出したファイルをその先に持って行ったり 外部ツール利用の方法が全くわかりません
330 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 23:02:13.62 ID:KAUrNTmh0.net] streamlinkはpythonで書かれてるのに、 pythonからの使い方が判らないので、subprocessでpython呼び出してる
331 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 23:06:57.52 ID:+xtv5Wsa0.net] Pythonでやるからややこしい 1,2はfind 3,4,5はxargs + sh(cd, mkdir) でできる内容 Pythonでやるのがお題ならごめん
332 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 23:16:45.17 ID:fIaDMlsG0.net] >>331 バッチでってことですか? FFMPEGがワイルドカード対応してなくて無理でした
333 名前:デフォルトの名無しさん [2021/12/06(月) 23:24:01.09 ID:uKiaXwwm0.net] シェルの方が早そうだね
334 名前:デフォルトの名無しさん [2021/12/06(月) 23:29:51.84 ID:rLSBlzT30.net] >>329 >1.ファイルの入ったフォルダをコマンドライン引数1に設定する >2.フォルダ内から特定の拡張子かつ一定以上のファイルサイズのものを抽出する >5.フォルダは4の指定ディレクトリ内にファイル名で新規作成する 2と5の間はとりあえずスキップして、ここだけの実装は可能?
335 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 23:31:26.15 ID:fIaDMlsG0.net] >>334 2の途中で詰まりました 抽出したファイルの扱い方がわからなく・・・
336 名前:デフォルトの名無しさん mailto:sage [2021/12/06(月) 23:49:14.76 ID:R0qeSVmL0.net] 配列に入れればいいだけじゃね
337 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 00:14:41.57 ID:ebSZa7bB0.net] >>332 バッチてことはWin環境なんかな Pythonで解決した後でもいいからPowerShellもしらべてみて 習得にあるていど時間かかるけどやれることが広がるよ あとワイルドカード展開するのはコマンドじゃなくて通常はシェルの仕事
338 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 00:34:04.97 ID:P3Md4odo0.net] すみませんバッチファイルの本を買って勉強します ありがとうございました
339 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 00:59:42.03 ID:O2KWEQqW0.net] 実際問題として、PS使うならPythonで書こうとするかなぁ 他のOSでも使うことができるし とりあえずバッチとwshは使いたくない
340 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 01:31:43.51 ID:q8J3SSC40.net] find -execかfind xargsが鉄板だと思うけど 外部コマンドのstdout/stderr出力をPython側でキャプチャする必要なければそんなにややこしくもない for path in Path(search_dir).glob(pattern): __if path.stat().st_size > 1000: ____dir_path = Path(output_dir).joinpath(path.stem) ____dir_path.mkdir() ____new_path = dir_path.joinpath(path.name) ____os.system(f'echo "{path}, {dir_path}" > "{new_path}"') (同じファイル名があった場合の対処はしてない)
341 名前:デフォルトの名無しさん mailto:age [2021/12/07(火) 01:36:39.28 ID:MjkMHobt0.net] winでもwsl2で >331が書いてる手順でヤレる powershellも覚えれば便利なんだろうけど…
342 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 06:51:56.92 ID:BLeYwod+0.net] >>329 2.は os.listdirすればリストで返してくれる この辺見てみた? https://note.nkmk.me/python-os-path-getsize/
343 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 07:18:25.74 ID:Jl0mhXXA0.net] 使うのがffmpegの場合、他にも考えるべきことが大量にあるので、 一括ではうまく行かないんだよな 何が来ても自分好みのファイルに変換する万能スクリプトを一つ書いて、 それに処理するファイル一覧を食わせる方式に落ち着いた
344 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 08:57:52.26 ID:BFhf39Z30.net] awk,sedが必要になったらシェルスクリプトを諦めて全部Pythonで書くかな。 あれらを今から学習する気力が湧かない。
345 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 09:05:21.33 ID:Jl0mhXXA0.net] PSはPSでしかできないパワフルなことがあるので、 その部分だけPSでやるのがいい windowsの底の部分を簡単にいじれるのはPSだけ
346 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 10:45:42.99 ID:F2U4yKHS0.net] 質問するならコード貼ってほしいな このスレのテンプレにpaste用サイトが書いてある
347 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 11:08:12.05 ID:A/pvwvVNr.net] PSはlinuxでもosxでも動くし、あれだけで出来ること結構あるから知ってると便利だよな
348 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 11:49:17.79 ID:G7aiaFNj0.net] ガチでヌーブなんですけどrequestsとbeautifulsoupでスクレイピングやってます waitかけないとバンされるよと言われましたがどうすればいいですか? requests.get()でtimeoutは今書きましたがforで同じサイトの似たようなページに何度もアクセスするのでサーバーへの負荷はすごいと思います これに対してどうすればいいですか?
349 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 12:01:37.39 ID:Jl0mhXXA0.net] 適度にsleepする
350 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 12:17:07.83 ID:yRaAbrIt0.net] 手動でブラウザ操作したときまんまsleepしたらいいだけ サーバ構築する側はボットなんか勘定にいれてコスト設計してないんだから
351 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 12:22:57.09 ID:P3Md4odo0.net] >>342 for curDir, dirs, files in os.walk(sys.argv[1]): for file in files: if file.endswith("〇〇"): os.path.getsize(ts) print(os.path.join(file)) これでファイルは取得できるのですがそのファイルを参照する方法がわからず・・・
352 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 12:24:12.30 ID:P3Md4odo0.net] こうでした for curDir, dirs, files in os.walk(sys.argv[1]): for file in files: if file.endswith(".〇〇"): print(os.path.join(file))
353 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 13:08:03.12 ID:F2U4yKHS0.net] 並列数1なら大したことないけどね 応答時間200ミリ秒なら、毎秒最大5リクエストだし
354 名前:デフォルトの名無しさん [2021/12/07(火) 13:09:23.97 ID:A/pvwvVNr.net] 参照って何をしたいのか知らないけど、ファイル名取得出来てるんだからオープンするのも他のコマンドの引数に与えるのも可能では
355 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 13:32:14.96 ID:lMfMxSoR0.net] >>352 Ruby では、glob に拡張子も指定できる # 絶対パスのディレクトリ名の後ろに、*.txt を付ける。 # . で始まる、隠し directory, file を除く glob_pattern = "C:/Users/Owner/Documents/**/*.txt" separator = "-" * 30 + "\n" Dir.glob( glob_pattern ) .select { |full_path| File.file?( full_path ) } # ファイルのみ .each do |full_path| puts "#{ separator }#{ full_path }\n#{ separator }" + File.read( full_path ) end
356 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 14:32:51.33 ID:Jl0mhXXA0.net] できないglobなんか無いだろ from pathlib import Path p = Path("c:/path") for filename in p.glob("*.mp4"): print(filename)
357 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 15:09:33.84 ID:NCVMykAH0.net] つかglobを何だと思ってんだガイジは
358 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 15:23:50.74 ID:F2U4yKHS0.net] スレタイ読めない人がいるな
359 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 21:21:55.14 ID:3sCD52Waa.net] オワコンのruby薦められても困る
360 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 21:40:58.38 ID:Jl0mhXXA0.net] rubyとperlとVBとobjective-Cの人は、脱出するのが早いほど幸せになれる
361 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 21:43:22.87 ID:P3Md4odo0.net] すんげえ苦労したけどなんとか形になりました バッチなのですれ違いすみません もっと勉強して最適化していきます わかってしまえばすごくシンプル set Tool="Tool" set template="template" for %%f in (%1\*.〇〇) do ( mkdir "%2\%%~nf" %Tool% -i %%f -o "%2\%%~nf\%%~nf.dgi" -a -e del "%2\%%~nf\%%~nf.log )
362 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 22:06:22.51 ID:zHaA7V/Y0.net] ワロタw
363 名前:デフォルトの名無しさん [2021/12/07(火) 22:58:20.49 ID:I8679kEJ0.net] 嘘だろ
364 名前:デフォルトの名無しさん [2021/12/07(火) 23:00:21.81 ID:oV2OkogX0.net] クソワロタ
365 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 23:12:35.70 ID:7GhYBix30.net] templateって何?
366 名前:デフォルトの名無しさん mailto:sage [2021/12/07(火) 23:44:21.65 ID:F2U4yKHS0.net] ポテンシャルを感じる
367 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 01:37:02.26 .net] from datetime import datetime, timedelta import pytz dt=datetime.now(pytz.timezone("Asia/Tokyo")) print(dt) print(dt.today())# timezone変更 不適用 print(dt.time())# timezone変更 適用 dt_utc=dt.astimezone(pytz.timezone("UTC")) print(dt_utc) print(dt_utc.today())# print(dt_utc.time())# #2021-12-08 01:34:40.591170+09:00 #2021-12-07 16:34:40.592894 #01:34:40.591170 #2021-12-07 16:34:40.591170+00:00 #2021-12-07 16:34:40.598068 #16:34:40.591170 .today()てtimezone変更引き継いで?くれないんですね・・
368 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 02:08:39.64 ID:uCheTDCk0.net] Pythonで組みなおしています デフォルト関数も多そうだし条件分岐とかが簡単そうですが 外部ツール起動に対するオプション調査中です ファイル名を取得してその名前でディレクトリを作成するところまではできました import sys import os import subprocess for i in os.listdir(sys.argv[1]): file, ext = os.path.splitext(i) os.mkdir(sys.argv[2]+file)
369 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 07:20:30.37 ID:OmzTkGs60.net] >>367 参考になるかも https://qiita.com/shota243/items/91660ece72b5e84c3adb
370 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 13:19:52.67 ID:uCheTDCk0.net] 外部ツールに抽出ファイルをかけるのが難しいですね %Tool% -i %%f -o "%2\%%~nf\%%~nf.〇〇〇" -a -e この処理をPythonでどうやるのか? subprocess.runあたりを使うっぽいのですがその後の書き方や処理方法が不透明 ターミナルにパイプして処理する?とかになるなら結局バッチかパワーシェルで 統一した方が早いのでしょうか
371 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 13:33:21.38 ID:5HATgl/c0.net] 標準出力を取得して、とかやるとそれ用のことを書かないといけないけど、 実行させるだけなら超シンプル subprocessから取得したデータをパイプでffmpegに渡して、 とかやらせてちゃんと動くとちょっと嬉しい
372 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 13:43:19.97 ID:lsXABI8+d.net] ニコ生のえっちなやつ録画したいニキおつ
373 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 15:21:18.60 ID:M4uEosNe0.net] >>370 バッチで用が済むなら終わりでいいのでは 汚いスクリプトなんてプログラミングの勉強にならないし
374 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 16:12:58.05 ID:5HATgl/c0.net] m = re.search('pattern', str) if m: item = m.group(1) みたいには書けるけど、ifの中にmの取得を一緒に書けない? そうでないと、if elif elseで書けない
375 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 16:16:26.00 ID:Z7ccVyDn0.net] 昔のpythonでは書けなかったんですが python3.8からassignment expression := ができるようになりました
376 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 16:22:47.75 ID:5HATgl/c0.net] おおー、できるのか でもうちのは3.7だからできないわ 会社のは3.6だからもっとできない 変な互換性のなさを作り込むよりは、3.6でもやれる方法を考えよう
377 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 16:31:06.57 ID:cmZgcxZR0.net] >>370 各変数を別途取得して、subprocess.runで起動するアプリの引数として与えるだけ 自分で引数をオプションとして与えたいなら、argparseを使う
378 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 16:31:50.71 ID:lsXABI8+d.net] item = data.get(1) if item: id(item) #3.8 if item:= data.get(1): id(item)
379 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 16:51:20.77 ID:e5XneN8e0.net] pythonの野郎宗旨替えしやがったのか
380 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 17:00:08.30 ID:cmZgcxZR0.net] >>374 スコープの話なら、関数こさえてreturnで拾うという手もあるけど、めんどくさいね
381 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 17:02:23.43 ID:5HATgl/c0.net] 無駄な処理は増えるけど m1 = re.〜 m2 = re.〜 としておいてから、 if m1: elif m2: なら書ける 代入が評価もできる仕組みは、書き間違えてバグるからというよりは、 単純に読みにくくなる
382 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 17:12:25.01 ID:+2BbFlMUa.net] Pythonのifのスコープは脳に優しくないな
383 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 17:22:50.60 ID:aaXV5Kk80.net] プライベートだと思っていた彼女のホールがグローバルだった
384 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 19:30:48.14 ID:5HATgl/c0.net] 入力行をsplitして取り込む arg1, arg2, arg3 = line.split('\t') みたいな感じ でも、入力がちゃんとしてなくて数が多くても少なくてもエラーになる そこはよしなにやって欲しい 足りない部分はNoneで埋めて、余った分は捨てていい というええかげんなことをしようと思ったら、ええかげん関数を作るしかないのかな
385 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 19:35:03.01 ID:lsXABI8+d.net] hash = {'ぐれ':1, 'ぷ':2} matched = m.group(1) if not hash.get(matched): print('i want to write else case') elif hash[matched]== 1: print('do 1 case') ???
386 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 21:14:52.99 ID:/jR8/f4s0.net] >>384 arg1, arg2, arg3, *_ = line.split('¥t') + [None, None]
387 名前:デフォルトの名無しさん mailto:sage [2021/12/08(水) 23:31:45.91 ID:5HATgl/c0.net] + でいいんだな
388 名前:デフォルトの名無しさん [2021/12/09(木) 02:15:13.68 ID:WjLFVkiy0.net] すみません、質問なのですが、 newline= ってpython3じゃないと使えないのですか?
389 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 02:26:38.04 ID:y+vTbIG00.net] 調べてから質問してる?
390 名前:デフォルトの名無しさん [2021/12/09(木) 02:29:06.32 ID:WjLFVkiy0.net] してる
391 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 05:36:26.42 .net] "newline= を使う"ってなに? 文字列の中に改行コードは使えるか って意味じゃないよね それだとそっこーぐぐったら出てくるし。 なんかのライブラリやらフレームワーク的な話なのだろうか
392 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 05:39:43.24 .net] あるいはクロスプラットフォームでのCRLFかLFかみたいな話かな
393 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 06:51:10.51 ID:7v43kIFS0.net] openのオプションでしょ
394 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 08:02:22.78 ID:I94H5Ioy.net] >>388 python3.8.1 https://techiedelight.com/compiler/?MQK2 python2.7.17 https://techiedelight.com/compiler/?lKam
395 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 08:48:12.08 ID:zIpIn5ri0.net] beautifulsoupでattributeerror: nonetype nas no attribute stringが発生するんだけどnoneになることが想定される場合は一々いっこっこifでかこってやらないとだめなの?
396 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 08:56:56.15 ID:zIpIn5ri0.net] ifっていうかtryか
397 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 08:59:10.31 ID:7v43kIFS0.net] 最大限何でも見つかるようにしとくから、緩めるのはユーザ側でやってね という姿勢は間違ってないんだけどな 元から緩かったら厳しくしようがない
398 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 09:52:10.18 ID:q+Lg0FmZ0.net] 自分の管理できないデータを拾おうとする場合は 例外処理は必須だと思う
399 名前:デフォルトの名無しさん [2021/12/09(木) 10:42:48.76 ID:WjLFVkiy0.net] >>394 ありがとうございます!!!
400 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 11:32:41.22 ID:LJEXrIakM.net] >>395 ifかor Pythonにはsafe navigation operatorがないからスクレイピングコードは煩雑になりがち https://en.wikipedia.org/wiki/Safe_navigation_operator 要素がなければ空文字のようなデフォルト値を返す汎用的関数を自分で用意すると少し読みやすくなる
401 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 11:51:24.51 ID:q+Lg0FmZ0.net] JSONなんかだと、get()で拾えばまぁ困らんな
402 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 11:58:39.98 ID:LJEXrIakM.net] BeautifulSoupじゃなくてScrapyなら少しマシ 公式ドキュメントの質は段違い
403 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 12:37:45.04 ID:LJEXrIakM.net] >>401 指定した要素がない状況を考慮する必要があれば階層ごとに自分でハンドリングが必要だからgetだけじゃダメなんだよね safe navigation operatorがあればlodashのgetやrubyのdigのようなのが簡単に作れる 近いところでglomがあるけど処理を分割したり、つなげたりできないから使い勝手が悪い
404 名前:デフォルトの名無しさん mailto:sage [2021/12/09(木) 14:43:48.67 ID:kmW2UpC80.net] bsのドキュメントってなんであんな書き方なんかな