1 名前:デフォルトの名無しさん [2024/09/21(土) 10:14:02.15 ID:ZHy4g+PL0.net] !extend:default:vvvvv:1000:1024 !extend:default:vvvvv:1000:1024 ↑スレ立てる毎に減るので、減ってたら3つに補充すること。 ※前スレ Pythonのお勉強 Part73 https://mevius.5ch.net/test/read.cgi/tech/1717631290/ VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
16 名前:デフォルトの名無しさん mailto:sage [2024/09/29(日) 12:09:04.14 ID:PTSFLh1b0.net] フォントを設定するだけのことでよくわからんライブラリに依存させるのがいいことなのかと思ってしまうな
17 名前:デフォルトの名無しさん mailto:sage [2024/09/29(日) 17:28:15.27 ID:gYCMQfko0.net] seleniumでサイト内の文字を検索して、 文字が存在する場合、存在しない場合に分けて動作させようと思っています サイトに表示される文字列の一部が変化するため、完全一致では判定ができません ◯◯という文字を含む文字列がある場合 ない場合 というコードはどう書けばよいでしょうか? よく分からないまま以下を書きましたがもちろん検索は失敗しました try: driver.find_element(By.XPATH, "//*[text=あいうえお]") print("ありました") except: print("ありませんでした")
18 名前:デフォルトの名無しさん mailto:sage [2024/09/29(日) 19:12:48.23 ID:3XpHNNRd0.net] text in driver.page_source
19 名前:デフォルトの名無しさん mailto:sage [2024/09/29(日) 23:10:42.32 ID:y18OCo2k0.net] >>16 XPathに慣れてるのでなければ初心者はCSS Selector一択 element.textがJavaScriptのinnerText相当 text = driver.find_element(By.CSS_SELECTOR, ‘body’).text if ◯◯ in text: print("ありました") else: print("ありませんでした)
20 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 03:16:20.95 ID:LdpNEqiv0.net] 今さらだが、 for elseってあるんだな… よく使うの?
21 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 08:26:32.91 ID:CmdH7+bD0.net] 結構使う else: # breakしなかった場合 と毎回コメント付けてるけど 便利なんだけど名前が悪い
22 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 11:05:06.08 ID:rGpxgfzi0.net] >>19 使わない https://itest.5ch.net/mevius/test/read.cgi/tech/1689241721/451 の451~482あたりを見るといい
23 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 12:04:50.33 ID:CmdH7+bD0.net] elseを使わずに同じことをしようとすると、フラグを追加して、breakする時にフラグをセットすることになる 実際そういうコードもよくある elseはbreakが複数箇所あった場合の面倒さ、フラグの名前を考える手間を省いてくれる effective pythonではなんか変な例を持ち出して違う解決方法を示すだけで、 普通にフラグを使うコードもあることを無視している
24 名前:デフォルトの名無しさん (オッペケ Sr47-RzVJ) mailto:sage [2024/09/30(月) 12:23:30.25 ID:7i6IqdaJr.net] >>18 ありがとうございます!無事できました!
25 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 12:54:38.78 ID:6iqOAEp20.net] >>22 for-elseの代わりにフラグ使う必要とかないでしょ フラグ前提で考える人がfor-elseを使いたがるということなのか
26 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 13:03:56.81 ID:CmdH7+bD0.net] 例えばurlのリストに対してアクセスして、条件に合えばクリックして終了 クリックしなかったらメッセージを表示 フラグもelseも使わない実装は?
27 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 13:14:13.83 ID:9iSCXpur0.net] 初心者が今からPythonでデスクトップアプリ作りたい場合、GUIライブラリは何がいい?
28 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 13:30:33.16 ID:CmdH7+bD0.net] with ( open('file1.txt', 'w') as f1, open('file2.txt', 'w') as f2, ): print('あああ', file=f1) print('あああ', file=f2) こんなことできたんだな メインの出力とログと2種類要る時とか、仕方ないからネストさせてた
29 名前:デフォルトの名無しさん mailto:sage [2024/09/30(月) 15:56:07.94 ID:LdpNEqiv0.net] >>21 だよな PythonでAIを作ったりしたが、for elseなんて見たことないな…
30 名前:デフォルトの名無しさん [2024/09/30(月) 18:03:23.78 ID:Ivu6aBvf0.net] >>26 pysimpleguiが楽に色々作れるかな 商業利用が有料化されてインストールに少し手間がかかるようになったけど、それを許容できるならかなりオススメ バージョン5以降は年1回無料のライセンスを取得する必要がある それかライセンス認証が要らない4.70.1を入れる
31 名前: [2024/09/30(月) 18:07:32.20 ID:D4YV+jMH0.net] >>26 標準で使えるtkinterじゃあかんの?
32 名前:デフォルトの名無しさん [2024/09/30(月) 18:48:50.45 ID:kqBmzRMr0.net] ログハンドリングはforの上でするべきなのだ
33 名前:デフォルトの名無しさん (ワッチョイ b315-p+7u) mailto:sage [2024/09/30(月) 20:27:11.71 ID:mKhWOETT0.net] >>26 ファイルD&Dできないのが欠点だけど fletがなかなかいい
34 名前:デフォルトの名無しさん (ワッチョイ 73ee-eLKd) mailto:sage [2024/09/30(月) 20:32:14.10 ID:9iSCXpur0.net] >>29-32 見事に全員違くて草 ぐぐってみた感じでも標準のtkinterか初心者でも使いやすいpysimpleguiがいいっぽいね この二つで調べながらやってみる!あんがと
35 名前: 警備員[Lv.31]:0.02840106 (ワッチョイ c310-D2eP) [2024/09/30(月) 20:37:19.54 ID:D4YV+jMH0.net] なんでもかんでもとりあえずChatGPTに聞いてみるのが一番いいよ。
36 名前:デフォルトの名無しさん (ワッチョイ 7354-KQ/N) mailto:sage [2024/09/30(月) 20:37:34.93 ID:CmdH7+bD0.net] 結局GUIがやりたいならwebアプリが正解 いろんな人がそれぞれにGUI用の部品一式を提供してるけど、 一番馴染みがあるのがブラウザ 頑張ればゲームだって作れる
37 名前:デフォルトの名無しさん [2024/09/30(月) 20:59:26.32 ID:XGioOSpm0.net] for else基本使うことないけど、今までに2,3回これでいいかみたいな事があった気がする 具体的にどういうケースだったか忘れた >>35 WebUIはゴールデンハンマー云々って言ってる人がいた 一理あるって思ってPyside使い始めてるけど、プログラミングやり始めでこれ使えって言われたら挫折してたかもしれない GUI難しい
38 名前:デフォルトの名無しさん mailto:sage [2024/10/01(火) 10:29:59.58 ID:7ulB1lco0.net] >>25 普通にearly returnやyieldするだけ
39 名前:デフォルトの名無しさん mailto:sage [2024/10/01(火) 10:40:45.87 ID:7ulB1lco0.net] for-elseは命名の問題以外に 条件に合致する対象を見つけてくるという探索処理と 探索結果に対する処理とが不必要に密結合するという問題がある これがなければ命名は我慢して使ってもいいと思えなくもない
40 名前:デフォルトの名無しさん mailto:sage [2024/10/01(火) 11:59:53.46 ID:CfRMfbr90.net] >>25 の例を対象のurlを返すように関数化して処理を分離しようにも、 もうアクセスしちゃってるから続きでクリックするしかないんだよな early returnが使いたいから、というだけの理由で粒度やスコープを無視して関数化しちゃうのもちょっと
41 名前:デフォルトの名無しさん mailto:sage [2024/10/01(火) 17:31:02.48 ID:sFQyIfLy0.net] >>39 >もうアクセスしちゃってるから続きでクリックするしかないんだよな 別にそんなことないでしょ 下の各行がそれぞれ別の関数に分かれたところで 同じdriver同じelementに同じ順番でアクセスしてればいいだけ driver.get(url) element = driver.find_element(…) element.click() 逆にそれができないようなら必要な抽象化もできないことになる 例えばログインしちゃってるから続きでクリックするしかないとなったら login関数という形で抽象化できない
42 名前:デフォルトの名無しさん [2024/10/01(火) 21:20:21.01 ID:w4EeoDoz0.net] ガチ初心者の俺は まず最初に何作ったら 勉強になるの?
43 名前:デフォルトの名無しさん mailto:sage [2024/10/01(火) 23:53:16.60 ID:CfRMfbr90.net] >>40 見つかった場合はclickすべきelementを返す みたいな関数になるんだろう 不自然すぎる やってやれないことはないみたいな強弁としか 大半のケースではfor elseの使い所は無いけど、 たまにばっちりはまるケースがある 頻度は低いので、使う時はコメント必須
44 名前:デフォルトの名無しさん (ワッチョイ 6fcd-fhRs) mailto:sage [2024/10/02(水) 12:51:21.76 ID:VhOKxDCS0.net] 3.13来週か
45 名前:デフォルトの名無しさん mailto:sage [2024/10/02(水) 13:17:47.79 ID:Y5PwfM4H0.net] >>13 google claboで3が使えないから日本語は無しで進めたw ありがとう
46 名前:デフォルトの名無しさん mailto:sage [2024/10/02(水) 18:09:10.91 ID:4jHsmsQb0.net] re.DOTALLはインラインフラグでは(?s)だけど、sは何の略だろう
47 名前:デフォルトの名無しさん mailto:sage [2024/10/02(水) 18:20:50.77 ID:g2e/T20O0.net] singleline
48 名前:デフォルトの名無しさん mailto:sage [2024/10/02(水) 18:32:37.11 ID:4jHsmsQb0.net] なるほど MULTILINEと対応してないな perlでも/sと/mは結局どっちがどっちだか覚えられなかった 必ず逆になるんだよな
49 名前:デフォルトの名無しさん mailto:sage [2024/10/03(木) 16:51:19.28 ID:LhmpW7CX0.net] いまさVScodeでPythonを学んでいるんだけど Pythonにあったテーマカラーで何かオススメない? いまOne Dark Proっていうテーマにしてるんだけど、文字列はオレンジの方がいいかなって思ってきた
50 名前:デフォルトの名無しさん mailto:sage [2024/10/03(木) 17:04:58.12 ID:SXCr8u+C0.net] 変更したいと思ったことすらない
51 名前:デフォルトの名無しさん [2024/10/03(木) 18:36:30.78 ID:SO+gfZGnr.net] デフォルトなら文字列オレンジじゃね?
52 名前:デフォルトの名無しさん [2024/10/04(金) 00:56:50.57 ID:3S+V9Rl60.net] >>48 VSCodeは融通が利かない それに色分けは自分のためにならない 色情報はコードと何の関係もないので、色分けに慣れていると色分けをしていないコードが読めなくなる
53 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 01:05:39.06 ID:Ls4Fx/rv0.net] >>51 で、 何がいいって話?
54 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 02:07:40.34 ID:fj4w0BBZ0.net] 色分けされてないコードを読む そんな状況ってあるっけ・・? 白黒プリントアウトされてるとか?
55 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 02:21:36.87 ID:7yCtL1J1x.net] あえて色分けなしにする って訓練にはならないと思うけどね もし訓練になるって言うなら (慣れていない)別の色分けコードに遭遇したときに対しても 同じように読めなくならないと説明がつかないけど そんなことないし なので色は何でも良いんじゃない おれは基本デフォ ネットで調べるときも容赦なくデフォで表示されるし 初学者にとって プログラミング向きのタイピング速度(コーディング速度) これが一番重要だと個人的に思う 命名やコーディングにかかるチリツモ時間が 初心者にとっては妨げになるので 予測変換などもガンガン使っていった方がいい
56 名前:デフォルトの名無しさん [2024/10/04(金) 09:53:42.06 ID:8exysTNA0.net] シンタックスハイライトの後は自動インデント、自動補完の話が続くんだろ chatgptにダーク系のおすすめ聞いてきたから好きなの鰓べ Dracula, Monokai, Solarized Dark, One Dark Pro, Gruvbox Dark, Nord
57 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 12:29:15.26 ID:f5VlUYAG0.net] >ハイパーモダンPython ってそんなにすごい知識が身につくの?
58 名前:デフォルトの名無しさん [2024/10/04(金) 12:47:22.85 ID:lUav+mwb0.net] >>51 寧ろvscodeは個別に配色の設定することも可能だから融通は利く
59 名前:デフォルトの名無しさん [2024/10/04(金) 13:27:33.15 ID:RixEjMnja.net] >>51 >色情報はコードと何の関係もないので、色分けに慣れていると色分けをしていないコードが読めなくなる これめっちゃ判る 特に初心者ほどやめた方が良い
60 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 13:45:12.37 ID:2V3z57MG0.net] 色分けされてる方が読みやすい という単純な事実なのでは 初心者でも慣れてても同じ 道具に頼ると素手でできなくなるからと道具使わない人みたいな感じ
61 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 13:48:53.62 ID:RqFpLHKv0.net] 逆に初心者の方が誤りを判別する手助けにもなるので、 色分けされていたほうが便利だと思う
62 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 14:16:07.08 ID:3xmlzivUa.net] >色分けをしていないコード ってどういうことなんだろ わかる言ってるやついるけど おれは全然わかんないわ笑 色無いなら自分で色分けすればよくね? 色アリ無しどちらではじめようが慣れたら結局 ・色分け無しで慣れる→色分けアリでも読める ・色分けアリで慣れる→色分け無しでも読める なんだから、最初から色分けアリの方が学習コスト低いよな
63 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 14:22:18.26 ID:i5vhWVds0.net] まぁ(初心者)色分けやめた方がいいって言ってるやつも 色分けした方が読みやすいって言ってんのが答えだわなw
64 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 14:30:37.03 ID:vJhSgpGOa.net] 道具に頼って素手よりパフォーマンス上がればそりゃ道具使うわな 土方ですら水平器もインパクトドライバーも使ってるわ
65 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 14:32:10.85 ID:IDs1O+210.net] 勉強にならんからIDE使うな的な
66 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 14:49:16.95 ID:Af8duaqZ0.net] コーディングから実行までちんたらする時間がマジで無駄 スペルミスに勘づくスキルは上昇しづらくなるだろうがエラーメッセージに頼ればいいしエラーメッセージと勝負して先回りする意味はない まず善い手本参考に自分で書いたコードが成功か失敗か確かめる数こなした方が上達する 言語学習でも同じ インプットアウトプットの回数多い方が文法も語彙力も上がる 文脈把握できればエラーに気づく能力も上がる 色分け無し縛り云々は逆張り愉快犯以外に利点はない
67 名前:デフォルトの名無しさん (ワッチョイ 6f09-/XLF) [2024/10/04(金) 15:58:46.91 ID:lUav+mwb0.net] >>58 この論理ほど馬鹿なものもない 便利機能はどんどん使えばいい 災害を想定して普段から水電気ガスが満足に使えない生活をしているやつは殆どいないだろう
68 名前:デフォルトの名無しさん (JP 0H87-PHWo) mailto:sage [2024/10/04(金) 16:18:08.42 ID:lDeI5PGjH.net] androidアプリ作ろうと思ってkivyで書いて コンパイルをgoogle colaboratoryでbuildozerでやったら 上手くapk作成できてandroid端末でもインストール動作確認できたけど コンパイルの時間めっちゃかかったなにこれ…たぶん20分くらい こういうもんなの
69 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 17:21:46.00 ID:2V3z57MG0.net] if elif elif else みたいにインデントを深くせずにtryを書けないかな
70 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 18:37:26.59 ID:x2l03NKV0.net] >>68 日本語でOK
71 名前:デフォルトの名無しさん (ワッチョイ 6f09-/XLF) [2024/10/04(金) 18:47:11.58 ID:lUav+mwb0.net] execで無理やり書け
72 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 19:21:49.26 ID:Z9HGqIB60.net] 色分けに慣れたらコード読めなくなるってマジ? でもキータとか見ても色分けして表示されてるところが多いしなあ とりあえずVScodeデフォルトでしばらく使ってみるわ!ありがと
73 名前:デフォルトの名無しさん [2024/10/04(金) 19:29:54.92 ID:lUav+mwb0.net] エディタの便利機能使わないならメモ帳でやっとけって話になるわな
74 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 19:31:01.13 ID:2V3z57MG0.net] https://i.imgur.com/ZRZqENW.png evalでできた
75 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 19:35:22.61 ID:2V3z57MG0.net] 数値部分eval だけでいいな
76 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 19:58:19.41 ID:upmSrzby0.net] for convert in (int, float, complex): でいい
77 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 20:17:43.91 ID:oFau5fAJ0.net] chromeでseleniumを動かしているのですが、実行した直後にコマンドプロンプトが落ちてしまうので、何のエラーなのかが一切分かりません どうやったら落ちなくできますか?
78 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 20:33:28.99 ID:JKo0fS4W0.net] >>76 そういうときは出来る限り最小構成 ↓で試して落ちるならseleniumのインストール時点で何かしら問題あるかも import time from selenium import webdriver chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('--headless') #chrome_options.add_argument('--no-sandbox') #chrome_options.add_argument('--disable-dev-shm-usage') driver = webdriver.Chrome(options=chrome_options) print("driver.get") driver.get("https://www.google.co.jp") print(driver.title) time.sleep(1) driver.quit() print("正常終了。")
79 名前:デフォルトの名無しさん mailto:sage [2024/10/04(金) 22:19:24.82 ID:JAupTFkx0.net] >>76 .pyファイルをダブルクリックするとかしてpy.exe(Python Launcher)経由でプログラムを実行してると推測する VSCodeとか入れてるならVSCodeからプログラムを実行すれば出力も確認できる 入れてないならプログラムの最後にinput()と書いてプログラム終了前にユーザー入力を待つようにするか.pyファイルをダブルクリックするのではなくコマンドプロンプトを先に開いてそこからpython hello.pyの形でプログラムを実行すれば出力内容を確認できる
80 名前:デフォルトの名無しさん mailto:sage [2024/10/05(土) 16:10:10.09 ID:kis0iOlf0.net] >>77 >>78 ありがとうございます! これまではbatファイルにpyファイルのパスを書いて、batファイルをダブルクリックで実行していましたが、 教えていただいたとおりコマンドプロンプトを開いて手動で打ち込んで実行すれば落ちずエラーを確認できました
81 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 16:50:59.12 ID:kvSgTVMcM.net] 質問です。ある書籍で price = 100 print(price * 1.10) print(int(price * 1.10)) の結果が 110.00000000000001 ←浮動小数点で表示 110 ←int関数を使って整数で表示 と書いてあるのですが、何故110.00000000000001になるのかが浮動小数点について調べましたが、私の知識では理解出来ません。 どなたか解説をお願いいたします。よろしくお願いします。
82 名前:デフォルトの名無しさん [2024/10/06(日) 17:09:34.73 ID:UFSeVUgGH.net] 浮動小数点と丸めの話は定番の話でググって出てくる説明で分からんかったらここでも多分無理だぞ
83 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 19:11:14.13 ID:6RIEhc9V0.net] print(100 * 1.08 == int(100 * 1.08)) # true print(100 * 1.1 == int(100 * 1.1)) # false 1.08だったら正確に108.0だったのにな
84 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 19:18:39.74 ID:6RIEhc9V0.net] a = 100*1.08 b = int(a) print(a is b) # False print(a == b) # True print(hash(a) == hash(b)) # True d = {} d[a] = 1 print(d[b]) # 1 1.1だとエラー
85 名前:デフォルトの名無しさん [2024/10/06(日) 21:53:44.52 ID:D+tHfaDh0.net] 結局二進数表記で無限桁になる場合は誤差が出るってことにつきる
86 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 22:18:43.84 ID:6RIEhc9V0.net] from fractions import Fraction rate = Fraction(110, 100) print(100*rate == int(100*rate)) # True
87 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 23:29:37.04 ID:AAf4wbtz0.net] ハイパーモダンpythonって何だそれ?って立ち読みしたらただのツールチェインの解説だった 原書見るとhypermodern python toolingだった 日本のオライリーは完全に終わった
88 名前:デフォルトの名無しさん [2024/10/07(月) 22:15:19.09 ID:QvvyKpnV0.net] 質問です。こちらの職業は勇者、戦士、空手家 勇者から柔道家までの5人の攻撃回数が異なります。 まず勇者は2回攻撃、戦士は3回攻撃、空手は3回攻撃 (勇者の1回分の攻撃は100〜200、20%の確率でクリティカルヒットの攻撃になることがある。 (戦士の攻撃は200〜300、20%の確率で攻撃がクリティカルヒット1回になることがある。 (空手家)空手家の攻撃は350〜500、ただし20%の確率で攻撃がクリティカルヒットとなるときがある。勇者は5%の確率でロトの剣が手に入る。 クリティカルヒットは攻撃力X2です。さてプログラムをやっていくか。 まずギルガメッシュっていう名前のenemy ラスボスの名前はenemyとする。ボスのHPは5万。 ボスは基本的に何もしません、できません。これやるとさすがに面倒なのでw 基本的にボスは攻撃しません。(面倒だからw) 一方的になかまあつめてボコすw さて、次の問題はキャラクターが何人いるか。 イフ文1でまず攻撃は勇者〜勇者=yu 戦士=sen 空手家=karate *ロトの剣で攻撃したら攻撃力が1.5倍あがります。* **癒しの穂。食べたら防御力と賢さがあがります** ロトの剣の出現条件は3並びで一つ食べることができます。 例えば111攻撃とか222攻撃とか333攻撃とか〜999まで。 次の発言からコードを書いていく。
89 名前:デフォルトの名無しさん mailto:sage [2024/10/07(月) 22:52:41.61 ID:stL6GaPr0.net] 発達障害風の生成AI?
90 名前:デフォルトの名無しさん mailto:sage [2024/10/07(月) 22:54:11.40 ID:nsk0Xk2O0.net] >>88 そんなものサンプルがないからこれは本物
91 名前:デフォルトの名無しさん [2024/10/08(火) 23:32:02.99 ID:2RqDvWQU0.net] >>88 さん みんなで考えよう! print("ゾーマが現れた") zoma == HP10000 print("勇者が笛を吹いた")#笛を吹くと仲間が一定数増える。 print("笛のおかげで戦士が仲間になった") print("zomaは何も攻撃してこない)#攻撃したらもっとプログラムの量が増えるから割愛w yusya kougeki =40 print("40のダメージを与えた") senshi = 100 if zomaの体力が0になった print("zomaは死んだ" elif: yusya=yusyakougeki だめだ あたまがいたくなってきたw
92 名前:デフォルトの名無しさん [2024/10/08(火) 23:41:03.98 ID:2RqDvWQU0.net] もっとシンプルにいこう! if文でいいはずw number = int(input()) print(number) if number == 10: print(str(number) + "のダメージは10に等しい") elif number > 10: print(str(number) + "のダメージは10より大きい") else: print(str(number) + "のダメージは10未満") ここまでできたw
93 名前:デフォルトの名無しさん [2024/10/08(火) 23:58:45.01 ID:2RqDvWQU0.net] yousya=you senshi=sen karateka=kara あぶねー初期化忘れてたわw you,sen,kara=0 これでよしw 次は割合に入るから気合いれなw number = int(input()) print(number) #その前にランダム要素を入れるの忘れてたw import random random.random() random.randint(1回攻撃、二回攻撃) if numberyou == 153: print(str(number) + "は153に等しい") elif number > 200:#勇者は二回攻撃なので、153と200の攻撃=攻撃となる。 print(str(number) + "senはyouより大きい") else: print(str(number) + "の攻撃力はsenとyou") まだまだだなーw誰か一緒にとかないかい?w
94 名前:デフォルトの名無しさん [2024/10/09(水) 00:28:36.20 ID:4B3K5XUV0.net] そっか、フローチャートにしたほうがみやすいかw '''スタートです。ラスボスは1匹。ゾーマです。ゾーマの攻撃は3回連続です。 こっちのキャラクターは勇者、戦士、魔法使い、僧侶、賢者、遊び人、魔法剣士、武道家の8人 また敵のスピードは8人より遅いのでいつも最後にゾーマのターンになります。 呪文が一切効かない。そのため、勇者、戦士、魔法剣士、武道家の攻撃のみで倒さないといけません。あと変数は勇者はyou、戦士はsen,魔法剣士はmaho ,武道家はbu。僧侶、賢者、遊び人は体力が減ったら回復呪文を唱えます。'' 勇者以外全員体力が999です。 勇者は体力が500です。 100 スタート 200 変数を初期化する ゾーマが生きている場合 you,sen,bu,mahoが攻撃をする それ以外は体力が減ったら回復につとめる ゾーマのHPは5万。 youの攻撃は3回連続して足した値 senの攻撃も3回連続 mahoも3回連続 buも3回 設定で自由かできる。 a=ガンガンいこうぜ! print("ガンガンいこうぜ!) b=体力回復を最優先にしようぜ! print("体力の回復を優先しよう!) c=攻守のバランスがいい print("攻守のバランスがいい) 続く。。。w
95 名前:デフォルトの名無しさん [2024/10/09(水) 02:09:25.11 ID:4B3K5XUV0.net] これでいいやw面倒だしw # RPGの攻撃状況を再現 # モンスターと戦っている。 # 1から10のサイコロをふって、 # 6未満の場合、サイコロの目だけダメージを与えたと表示。 # 6以上の場合、クリティカルヒットとして、100のダメージを与えたと表示。 # 0の場合、防御されたとして、0ダメージを表示。 import random hit = random.randint(0,10) if 1 <= hit < 6: print("スライムに、" + str(hit) + "のダメージを与えた!") elif hit >= 6: print("クリティカルヒットダメージ100を与えた") else: print("ダメージは、" + str(hit) + "防御された")
96 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 08:32:08.43 ID:URDCdGxSa.net] スレチうんこはBAN汁
97 名前:デフォルトの名無しさん [2024/10/09(水) 09:42:13.95 ID:1k3A/F0A0.net] 福祉系か
98 名前:デフォルトの名無しさん [2024/10/09(水) 09:43:01.06 ID:1k3A/F0A0.net] >>88 福祉案件
99 名前:デフォルトの名無しさん [2024/10/09(水) 10:51:29.69 ID:MfPA4Dhe0.net] match文使え
100 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 12:30:53.22 ID:L0RwG3mX0.net] 使ったことない
101 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 15:51:29.02 ID:wjyYHYx1M.net] html → javascript浅 → php → javascript深 → python と来てついにc++に手出すことにしたわ 専業でもないしpythonだけで自分のやりたいことほぼなんでもできるし見向きすらしなかった $ sudo apt install tree build-essential cmake pkg-config これだけで開発環境整うとは知らなかった pythonスクリプトと連携して簡単に開発できるか検討中
102 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 15:56:04.77 ID:L0RwG3mX0.net] 自分が高速化しなければ という余地が残ってればいいけど 電子工作とかと同じで、一通りできるようになったけど作るものが何もない状態になる
103 名前:デフォルトの名無しさん [2024/10/09(水) 17:59:18.01 ID:1k3A/F0A0.net] >>100 llvm使ってgplから逃げろ
104 名前:デフォルトの名無しさん (ワッチョイ cafa-lt6P) mailto:sage [2024/10/11(金) 03:18:27.10 ID:bCU/2bPQ0.net] https://imonar.com/PKQJotV.jpg
105 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 16:07:56.09 ID:tTImpqsq0.net] python+opencvすげえ! たった10行くらいでwebカメラの動画表示された!ものの1,2分のコーディングじゃん 皆pythonに移行するわけだなこんな便利なライブラリあったら他のやってられねえわ
106 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 19:42:25.28 ID:fZZZF+Af0.net] 大事なのは表示されてからだぞ どういうアプリを提供するのか? これだけライブラリが進化してるのにそれを使って大したアプリが出てないことを考えると 簡単かどうかは関係がない
107 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 23:05:48.34 ID:V8K6PYDOd.net] PythonはPoC止まり言語というイメージあるよね 「やってみた」ともいう
108 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 23:05:48.34 ID:V8K6PYDOd.net] PythonはPoC止まり言語というイメージあるよね 「やってみた」ともいう
109 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 00:58:43.18 ID:3/0Ne1V+0.net] 1817を渡すと'00:30:17'に変換してくれる関数ってある?
110 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 01:09:25.66 ID:3/0Ne1V+0.net] import datetime td = datetime.timedelta(seconds=1817) print(td) これで '0:30:17' が表示される ただし、'00:30:17' ではない print(f'{td:%H:%M:%S}') みたいなことをしてもエラーになる 妙に融通が利かない
111 名前:デフォルトの名無しさん [2024/10/12(土) 07:14:47.22 ID:5rKKsk01d.net] 本物の馬鹿っているんだな
112 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 08:38:00.65 ID:g42aTpjG0.net] import datetime dt = datetime.datetime(year=2001, month=1, day=1) td = datetime.timedelta(seconds=1817) print(f'{dt+td:%H:%M:%S}') こうやると'00:30:17' を得ることができる せめてyearとかが省略可能だったら
113 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 11:17:40.09 ID:xwLOOV9/0.net] pip install モジュール名== でモジュールのバージョン一覧が出る機能っていつのまにか無くなってんだな 便利だったのになんでだろ
114 名前:デフォルトの名無しさん [2024/10/13(日) 10:02:03.52 ID:UZT3uuKDa.net] >>104 入り口が広い(初心者向け)っていうのは重要だけど 込み入ったことしようとすると速度とか色々気になって来る まあ気になったら乗り換えればいいんだけど
115 名前:デフォルトの名無しさん [2024/10/13(日) 10:03:05.15 ID:UZT3uuKDa.net] >>105 そうほんとそれ みんなサンプル動かして満足して終わり
116 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 10:17:48.38 ID:UZT3uuKDa.net] >>111 >>> import time >>> print(time.strftime('%H:%M:%S', time.gmtime(1817))) 00:30:17
117 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 10:26:22.93 ID:5hnynBwd0.net] print(f'{time.gmtime(1817):%H:%M:%S}') こうは書けないんだよな 書けても誰も困らないだろうに
118 名前:Aもう更新の止まった古いモジュール [] [ここ壊れてます]
119 名前:デフォルトの名無しさん [2024/10/13(日) 11:57:56.51 ID:HElLI/1G0.net] pythonむずい
120 名前:デフォルトの名無しさん [2024/10/13(日) 12:19:27.14 ID:UZT3uuKDa.net] >>116 これもだめっぽ? import time tt = time.gmtime(1817) print(f'{tt:%H:%M:%S}')
121 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 12:24:50.27 ID:5hnynBwd0.net] 試したら判るがな TypeError: unsupported format string passed to time.struct_time.__format__ formatをサポートしていない サポートしていないものを新たにサポートさせても、既存のコードには何の影響もない だから、python 3.4で追加しましたとかなってても不思議ではないけど、 もうtimeモジュールは捨てられている
122 名前:デフォルトの名無しさん [2024/10/13(日) 14:44:15.99 ID:UZT3uuKDa.net] 自分で追加したらええんやで
123 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 14:54:11.13 ID:5hnynBwd0.net] 電池が自作できます
124 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 15:56:29.59 ID:Lfw+7lSHd.net] 勉強になったわthx https://paiza.io/projects/fWmiW0ZJcfGIiFRKkL1YTw
125 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 17:39:27.08 ID:5hnynBwd0.net] import datetime class My_timedelta(datetime.timedelta): def __init__(self, seconds): self.dt = datetime.datetime(year=2001, month=1, day=1) + datetime.timedelta(seconds=seconds) def __format__(self, format): return self.dt.strftime(format) td = My_timedelta(seconds=1817) print(f'{td:%H:%M:%S}') print(f'{datetime.datetime.now()+td:%H:%M:%S}') これは継承の練習問題でしょう 既存のtimedeltaに__format__を追加する
126 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 20:18:44.93 ID:XBbSNdN/0.net] timedeltaをdatetime用の書式で表現したら 間違いが起こりそうで怖いのは気のせいか
127 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 21:05:07.54 ID:5hnynBwd0.net] マイナスを渡すと23:29:43とかになる 多分欲しいのは、-00:30:17
128 名前:デフォルトの名無しさん [2024/10/13(日) 21:18:08.75 ID:TikvsAQNM.net] >>125 時刻と時間は別物だし、文字列として持っていればいい話。
129 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 21:20:20.02 ID:4MeCS0kR0.net] td = datetime.timedelta(seconds=1809) print(str(td).zfill(8)) これはだめ?
130 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 22:02:19.97 ID:5hnynBwd0.net] さすがに小手先すぎる マイナスにも対応できない そして秒は小数点以下1桁も表示することという仕様変更により、 3600で割ったりして全部自前で作ることになった
131 名前:デフォルトの名無しさん [2024/10/13(日) 23:12:53.64 ID:0McD6feo0.net] マイナスの日時という発想がわからない
132 名前:デフォルトの名無しさん [2024/10/13(日) 23:36:18.34 ID:cfTcGRh7a.net] 仕様後出し過去悪い
133 名前:デフォルトの名無しさん mailto:sage [2024/
] [ここ壊れてます]
134 名前:10/14(月) 00:55:34.21 ID:hhbIrBZG0.net mailto: import datetime s = -1816.123 g = (s>0)-1 td = str(datetime.timedelta(seconds=abs(s))).split(".") print(f'{str(g)[0]}{td[0].zfill(7-g)}.{td[1][:1]}')#-00:30:16.1 [] [ここ壊れてます]
135 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 00:58:07.55 ID:63V1I12+0.net] 1日超えたら駄目だったわ >>131
136 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 01:01:58.25 ID:Na+e0b340.net] 0で折り返すのは、abs()で処理して<0だったら'-'付ける、だろうなあ 流用できる処理が無い
137 名前:デフォルトの名無しさん [2024/10/14(月) 02:27:55.47 ID:iqlRL8W80.net] 秒数を時分に変えるのは60で割ればいい話だろうにw
138 名前:デフォルトの名無しさん [2024/10/14(月) 03:26:42.21 ID:iqlRL8W80.net] >>131 0.123が何を指しているのかわかる方がおかしい
139 名前:デフォルトの名無しさん [2024/10/14(月) 03:29:11.20 ID:iqlRL8W80.net] >>133 四則計算と文字列を任意の日時フォーマットにするだけだぜ? 日時データ型をいじるというのはコンピューターが最も苦手な計算。
140 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 06:09:53.67 ID:cfRK145W0.net] >日時データ型をいじるというのはコンピューターが最も苦手な計算。 馬鹿なのか
141 名前:デフォルトの名無しさん [2024/10/14(月) 06:26:06.92 ID:iqlRL8W80.net] >>137 64ビットだぜ?
142 名前:デフォルトの名無しさん [2024/10/14(月) 06:28:17.12 ID:iqlRL8W80.net] しかもまだ過渡期だから、実際は32ビットで計算している。 2036年問題だってすべてが対策済みというわけでもない。
143 名前:デフォルトの名無しさん [2024/10/14(月) 06:29:49.49 ID:iqlRL8W80.net] 60で割って1000で割るとか、64ビットだけではできない。
144 名前:デフォルトの名無しさん [2024/10/14(月) 08:54:29.92 ID:B2/CkVb50.net] 小数の誤差の話をしてる? 日時や時刻を扱う上で問題になるような誤差が出ることはなくない? どんなに厳しい分野でも必要なのはナノ秒の数値までだろうし
145 名前:デフォルトの名無しさん [2024/10/14(月) 08:56:37.40 ID:9n6nFJIZa.net] >>136 おまいが計算苦手なだけだろ
146 名前:デフォルトの名無しさん [2024/10/14(月) 10:43:52.07 ID:iqlRL8W80.net] >>141 64ビットCPUは64ビットのレジスタと外部とのやりとりが64ビットだ。 彼は1/1000秒まで正確に求めたいらしいが、2進数は10進数の表現ができない。 例えば10進数の1000は2進数だと1024になってしまう。 コンピューターは10進数の計算が苦手、時分秒なんてコンピューターには概念すらない。
147 名前:デフォルトの名無しさん [2024/10/14(月) 10:44:50.51 ID:iqlRL8W80.net] >>141 質問しているやつは秒を分にする方法を知らない。 60で割るということもわからない。
148 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 11:01:11.87 ID:XiI9iPvI0.net] そもそも質問ってなんなの >>108 からの >>111 、派生で>>116 後出しで ・マイナス ・小数点以下 にも対応 ようは、ほんとはdatetimeかtimeで 一発で書きたい もしくは、 出来る限り自作関数など無しで書きたい だと思うけど
149 名前:デフォルトの名無しさん [2024/10/14(月) 11:01:57.59 ID:iqlRL8W80.net] 初心者は数値は数値型、文字列は文字列型とか意味もわからずにデータ型を決めたがるよな。 hh:mm:ssは日時型という内部表現と画面に表示されている見た目を混同するあたりも意味がわからない。
150 名前:デフォルトの名無しさん [2024/10/14(月) 11:04:17.72 ID:iqlRL8W80.net] >>145 秒数を60で割る、ミリ秒は1000で割るという秒と分の換算がわからないというPython以前の問題児
151 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 11:52:49.48 ID:H9fWIyl80.net] >>145 一発で書く方法はないので自作関数必須 いずれにしろ入力フォーマット、入力値の範囲、必要精度、出力フォーマットの仕様が必要 この程度は標準で用意しといてくれよという気持ちはよく分かる
152 名前:デフォルトの名無しさん [2024/10/14(月) 12:36:08.87 ID:iqlRL8W80.net] >>148 それだとあなたが存在する必要がない
153 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:38:01.47 ID:upEjQ6n10.net] >>143 >彼は1/1000秒まで正確に求めたいらしい どこを見てそんな解釈したんだ?
154 名前:デフォルトの名無しさん [2024/10/14(月) 12:44:19.92 ID:iqlRL8W80.net] >>150 131 デフォルトの名無しさん (ワッチョイ eb61-lE/J) sage 2024/10/14(月) 00:55:34.21 ID:hhbIrBZG0 import datetime s = -1816.123 g = (s>0)-1 td = str(datetime.timedelta(seconds=abs(s))).split(".") print(f'{str(g)[0]}{td[0].zfill(7-g)}.{td[1][:1]}')#-00:30:16.1
155 名前:デフォルトの名無しさん [2024/10/14(月) 12:45:05.98 ID:iqlRL8W80.net] 1816.123秒という例を本人が書いている
156 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:48:52.68 ID:o4N23i0F0.net] 60で割って云々はちょっとズレているというかアスペ感があるのでひとまずその問題は置いといて ストップウォッチ風な表記をdatetimeかtimeで一発で出せたらいいのに、ってことなら そもそもストップウォッチって 0’00’’00 だったような なら0:00:00でよくて 別に2桁縛りの0埋めじゃなくてもよくね ミリ秒部分は知らないけど
157 名前:デフォルトの名無しさん [2024/10/14(月) 12:52:58.55 ID:iqlRL8W80.net] >>153 彼はフォーマットのことも言っているが、1816秒を分に変換する方法がわからない。 1分は60秒だ。1000ミリ秒は1秒。
158 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:53:22.00 ID:NoA08L9i0.net] 0:00:00 10:00:00 これが揃ってないのがむずむずする みたいな問題だとしたら 日付関数というよりprintなど出力フォーマット側の仕様にした方が個人的にはしっくりくる
159 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:53:51.85 ID:upEjQ6n10.net] >>151 -1816.123という秒の単位で期間を表現した数値を HH:MM:SS.0やHH:MM:SS.000形式の文字列にフォーマットしたいというのと 1/1000秒まで正確に求めたいというのは全然別の話じゃん しかもそれ本人じゃないだろ
160 名前:デフォルトの名無しさん [2024/10/14(月) 12:54:47.77 ID:iqlRL8W80.net] 本当に60秒が1分だと知らないのかもしれない。 datetimeライブラリなんか使う必要もない。
161 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:55:18.84 ID:+rCJDD4J0.net] >>154 おまえはズレてるのでちょっと会話できないわ すまんね そもそも>>131 は別人だしお前以外は流れでわかってると思うよ
162 名前:デフォルトの名無しさん [2024/10/14(月) 12:58:59.46 ID:iqlRL8W80.net] >>158 本人の書き込み 109 デフォルトの名無しさん (ワッチョイ 4f54-O9y3) sage 2024/10/12(土) 01:09:25.66 ID:3/0Ne1V+0 import datetime td = datetime.timedelta(seconds=1817) print(td) これで '0:30:17' が表示される ただし、'00:30:17' ではない print(f'{td:%H:%M:%S}') みたいなことをしてもエラーになる 妙に融通が利かない
163 名前:デフォルトの名無しさん [2024/10/14(月) 13:00:47.49 ID:iqlRL8W80.net] 1817秒を30分17秒と単純に割り算をして、文字列をくっつければいい簡単な話だぜ。
164 名前:デフォルトの名無しさん [2024/10/14(月) 14:04:34.65 ID:2T1ySmhp0.net] 54に続いて78が爆誕か >>143 の3行目とかマジでどういう脳ミソしてんだろう
165 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 14:11:38.27 ID:mb36WxU50.net] >>155 printによる出力フォーマットは出力する値の型(ここではdatetime型やtimedelta型)に依存してるんだぞ
166 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 14:11:47.79 ID:vJAIv8ZI0.net] 最初の質問って「ある」「ない」を聞いてるだけじゃね? 無ければ自分で作るかぁ、みたいな 作り方なんて分かってる上での質問でしょ
167 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 14:28:50.30 ID:CJVgcXbL0.net] >>162 その理論だとprintにオプションなくてもいいよね
168 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 15:04:56.69 ID:Nrkl1oO4d.net] 判ってると思うけど 1000 で割るより 1000000 で割った方が良い
169 名前:デフォルトの名無しさん [2024/10/14(月) 15:56:41.32 ID:iqlRL8W80.net] 数値 ↓ 時刻 ↓ 文字列 という奇妙なデータ型変換
170 名前:デフォルトの名無しさん [2024/10/14(月) 16:00:42.53 ID:cfRK145W0.net] >>166 馬鹿が発狂した
171 名前:デフォルトの名無しさん [2024/10/14(月) 16:05:57.37 ID:iqlRL8W80.net] 最終的な時刻フォーマットは時、分、秒がわかっていればいいだけなのにな。 1817秒÷60の結果で30分と17秒という分数と秒数が出せる。
172 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 16:38:57.17 ID:u3iQG5/50.net] def convert_1817(sec): if sec == 1817: return '00:30:17' else: raise ValueError('sec must be 1817') print(convert_1817(1817))
173 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 17:32:36.62 ID:dK7b/9hZ0.net] 20レスもしていて簡単なサンプルコードも書けないという事実
174 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 17:41:03.15 ID:rj+zMLjj0.net] むしろ誰がコードなんて欲してるの?
175 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 18:10:36.90 ID:Q0jRvIa
] [ここ壊れてます]
176 名前:r0.net mailto: 回答としては 質問の要求を満たす何らかの ・関数 ・datetimeやtimeなどオプションやメソッド の掲示、なければ無い 場合によってはノーコードにもならない ただひとつ確実に言えることは 割る60だの算出方法にひたすら拘っているアスペっぽいやつが的外れだということ [] [ここ壊れてます]
177 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 18:27:31.94 ID:/mng7eSx0.net] アスペおじさんもだけど君も大概やで >>131 とか>>164 とかギャグじゃなければヤバいぞ
178 名前:デフォルトの名無しさん [2024/10/14(月) 18:33:31.99 ID:iqlRL8W80.net] >>170 数字とコロンを連結するというところがなぜかprint関数でやるというヘンテコ話になっているからネタかもしれない。
179 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 19:40:06.63 ID:m36PLLju0.net] 経験上、文句を言うだけで理由を言語化できない人の方がヤバい人は多いですね
180 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 19:42:21.98 ID:dmvKd1h40.net] 1f78-oCgEだけは段違いで会話が成立しないレベル レス数から言ってもわざとやっているとは思えない
181 名前:デフォルトの名無しさん [2024/10/14(月) 19:44:03.40 ID:iqlRL8W80.net] printさせるのはいかにも入門書という感じだけどさ、データ型の概念もなければ、データ型を変換するキャストも知らない。 ms = 1817 = f'{num:04}' ji = = f'{num:(ms // 3600)02 fun = ms // 60 byo = ms % 60 () + (1817 / / 60) + ':' + (1817 % 60)
182 名前:デフォルトの名無しさん [2024/10/14(月) 19:44:17.15 ID:iqlRL8W80.net] めんどくせぇな
183 名前:デフォルトの名無しさん [2024/10/14(月) 19:46:36.32 ID:iqlRL8W80.net] 教えてクレクレ
184 名前:デフォルトの名無しさん [2024/10/14(月) 19:49:17.59 ID:iqlRL8W80.net] 自分はわからないのでお金を出して他人にやってもらうというのが正解だ 段階を踏まずにいきなり最終形にしたがるのも初心者の特徴
185 名前:デフォルトの名無しさん [2024/10/14(月) 20:22:43.99 ID:cfRK145W0.net] ID:iqlRL8W80 基地外確定
186 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 21:40:22.67 ID:SB1Ci/250.net] 関数一つ設計することが出来ないおじさん二人の醜い争い
187 名前:デフォルトの名無しさん mailto:sage [2024/10/15(火) 10:06:05.50 ID:vVD3TI360.net] 今からPython始めても食ってけない? gptのせいでコード自動生成されてしまうから
188 名前:デフォルトの名無しさん mailto:sage [2024/10/15(火) 12:07:07.85 ID:4n6/+UIx0.net] >>183 その質問もまずはChatGPTに聞くとよい
189 名前:デフォルトの名無しさん mailto:sage [2024/10/15(火) 12:20:33.41 ID:vNiVptT20.net] コードを改良するプログラムを生成するように依頼 そのプログラムで自分自身を改良し続けるようにして実行
190 名前:デフォルトの名無しさん mailto:sage [2024/10/15(火) 17:12:58.10 ID:ISNWUP6x0.net] プログラマになれないのに諦めない心意気は買うが辛くなるだけだぞ
191 名前:デフォルトの名無しさん mailto:sage [2024/10/15(火) 17:22:58.02 ID:p9LvrA/f0.net] Python系YouTuberになるための肩書としてプログラマなるならありかも知れん
192 名前:デフォルトの名無しさん [2024/10/15(火) 19:27:15.97 ID:obclbCzJ0.net] 今からPythonするならAIを設計する側に回るように頑張るのがいい もしAIがより高性能なAIを設計できるようになったらそもそも社会が別物になるだろうし
193 名前:デフォルトの名無しさん mailto:sage [2024/10/16(水) 17:27:46.34 ID:98gvsp6K0.net] matchってswitch? なんで変な名前なの?
194 名前:デフォルトの名無しさん [2024/10/16(水) 17:35:39.03 ID:qvWniM9xd.net] >>189 馬鹿にはそう見えるのか
195 名前:デフォルトの名無しさん mailto:sage [2024/10/16(水) 17:49:43.98 ID:uCgI/8kk0.net] C言語の時点でswitchは特に便利でもなかった そこだけインデントが変になるし、breakまみれになるし それでも推奨されたのはコンパイルで高速化できるから 分岐のかたまりではなくテーブルでジャンプするように変換してくれる だから必然的にpythonにswitchなんか不要
196 名前:デフォルトの名無しさん mailto:sage [2024/10/16(水) 18:18:16.18 ID:98gvsp6K0.net] >>191 ↑ 高速化は事実だが、 テーブルうんぬんは間違い。
197 名前:デフォルトの名無しさん (ワッチョイ 9f5a-G8R7) mailto:sage [2024/10/16(水) 20:02:33.53 ID:P8hUv73s0.net] 高速化として意味があったのは昔の話だけどね
198 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 18:14:57.71 ID:lX/5R9Jx0.net] profile指定する以外の方法でseleniumでメルカリにログインする方法が判らん
199 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 20:37:13.97 ID:rL5MZKqkH.net] >>189 別に変じゃないだろ マッチ(match)させてその結果により分岐(switch)するという二段階の処理 用語として前を取るか後ろを取るかだけの話だ
200 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 20:43:44.76 ID:91c0XYHa0.net] パターンマッチのmatch switchにはパターンマッチの機能はない
201 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 20:52:52.68 ID:l8JBYm7A0.net] >>195 え? じゃ、switchでいいでしょ
202 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 21:15:16.24 ID:lX/5R9Jx0.net] 条件に合うか検査して分岐するんだからswitchだよな 英語のswitchってそんな多数分岐のニュアンスあるか? という疑問もある AからBへswitchみたいな、2分岐がせいぜいなのでは
203 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 21:31:53.31 ID:rL5MZKqkH.net] >>197 じゃ、て何よ どっちかなんだからmatchでもいいじゃん
204 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 21:41:55.68 ID:lX/5R9Jx0.net] switchと似て非なるもの、という意味でmatchにしたんだろうな -tchが共通してるのは意図的 switchと同じと思われることを避けるというよりは、 switchとは違うのだよswitchとはという積極的な意思表示
205 名前:デフォルトの名無しさん [2024/10/17(木) 21:50:15.51 ID:yeHUFxEBa.net] switchに2択という意味は無いぞ
206 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 21:55:19.50 ID:lX/5R9Jx0.net] longmanを引くと 1. to change from one thing to another, usually suddenly 2. to secretly remove one object and put another similar object in its place 3. to help someone you work with who needs time away from the job by agreeing to work certain hours for them if they do the same for you 4. to change the way a machine operates by using a switch 1.ある物から別の物へ、通常は突然変えること。 2.ある物をこっそり取り除き、別の似たような物をその場所に置くこと。 3. 一緒に働いている人が仕事から離れる時間を必要としている場合、その人が自分と同じことをしてくれるなら、その人のために一定の時間働くことに同意することによって、その人を助けること。 4. スイッチを使って、機械の作動方法を変えること。 何かからanotherへ切り替えの意味なんだよな
207 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 21:59:22.15 ID:lX/5R9Jx0.net] ああ、2分岐でいいんだ だからcaseなんだ この場合はこれに切り替え、この場合は、という2分岐がたくさん書いてあるのか 長年の違和感がやっと解決した
208 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 22:45:28.58 ID:iAHoYOGo0.net] with open(file_path, "r") as file: lines = file.readlines() これだと普通に動くのですが with open(file_path, "r" , encoding="utf-8") as file: lines = file.readlines() こういう風にopen関数に第3引数を指定すると、実行してもなぜかすぐ終了してしまいます 原因わかる形いませんか?
209 名前:デフォルトの名無しさん mailto:sage [2024/10/17(木) 22:49:09.06 ID:iAHoYOGo0.net] すみませんencoding="shift-jis"にしたら動きました 質問したらすぐに自己解決する不思議・・・というか何も即終了しなくても
210 名前:デフォルトの名無しさん mailto:sage [2024/10/18(金) 01:36:02.01 ID:Ut6mx
] [ここ壊れてます]
211 名前:k750.net mailto: でも matchって色々機能があるね 使うのめんどくさいな [] [ここ壊れてます]
212 名前:デフォルトの名無しさん [2024/10/18(金) 03:44:59.91 ID:5Kk3482aa.net] Zennにもゴミ記事ってあるんだな https://zenn.dev/nekoshita/articles/01c04ec83144ee
213 名前:デフォルトの名無しさん mailto:sage [2024/10/18(金) 05:05:39.02 ID:YY9Hp1UeH.net] >>206 うん if~elifで済ませてきたんだから今更だし 確かPythonには一つのことをするのに複数のやり方があるのはご法度って考えがあったはずだし 開発陣の頭がボケてるとしか思えん
214 名前:デフォルトの名無しさん [2024/10/18(金) 07:12:42.20 ID:HW2s8lVK0.net] マッチでもスイッチでもいいが、CPU内では比較命令をそのたびにしてプログラムをジャンプすることでロジックをスルーする。
215 名前:デフォルトの名無しさん (アウアウエー Sa3f-mL/d) [2024/10/18(金) 11:16:24.04 ID:wVDH4S6Qa.net] choiceでも良いし selectでも良い
216 名前:デフォルトの名無しさん (ワッチョイ 3b54-I4pY) mailto:sage [2024/10/18(金) 11:26:19.64 ID:gGHJI5N60.net] branchかなあ 複数に分岐する意味も最初から持ってる でもアセンブラ的にはブランチは条件ジャンプと同義、、、
217 名前:デフォルトの名無しさん mailto:sage [2024/10/18(金) 13:52:06.91 ID:wVDH4S6Qa.net] case の方を前面に出した言語もあったはずω
218 名前:デフォルトの名無しさん mailto:sage [2024/10/18(金) 15:40:13.78 ID:Ut6mxk750.net] >>206 速度は場合によるようだね ifのほうが早いケースもある
219 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 09:16:44.68 ID:XsGIQo9N0.net] print(mes, file=(f, sys.stdout)) みたいなことができればいいのに
220 名前:デフォルトの名無しさん (ワッチョイ cf01-sfBM) mailto:sage [2024/10/19(土) 10:19:20.60 ID:+tdI/ffv0.net] 複数箇所にwrite()するクラスを用意すれば簡単にできるけど ちゃんとしたアプリケーションならロガーを使うし 簡易的なスクリプトならpythonの出力をteeするので 普通はやらない
221 名前:デフォルトの名無しさん (ワッチョイ 3b54-I4pY) mailto:sage [2024/10/19(土) 10:32:03.25 ID:XsGIQo9N0.net] ログではないんだよな 結果をファイルに出力しながら、経過の情報を画面に出力する 所要時間はこれだけでした、みたいな両方に出力したい内容は両方に出す
222 名前:デフォルトの名無しさん [2024/10/19(土) 11:05:51.25 ID:Qn7y5thLd.net] >>216 >>215 嫁
223 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 11:15:28.75 ID:+tdI/ffv0.net] >>216 であれば余計に1つのprintで処理する内容じゃないから 違う形の抽象化を考えたほうがいいよ どういう形の抽象化がいいかは将来的な変更の可能性や コンフィグ可能にしておく要素によって変わってくる
224 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 11:24:28.68 ID:XsGIQo9N0.net] いや、同一内容を2箇所に出力できれば片付く問題なんよ
225 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 11:30:30.87 ID:+tdI/ffv0.net] >>216 経過情報や所要時間はこれだけでしたみたいな出力は一般的にはログって言うんだよ
226 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 11:32:49.65 ID:+tdI/ffv0.net] >>219 printで2箇所に出力したいなら>>215 に書いてるように 簡単にできるんだからそうすればいいんじゃない? いい設計ではないけどね
227 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 11:35:48.54 ID:XsGIQo9N0.net] logは記録に残すもので、画面にだけ表示して消えていいものはlogとは言わない 用語の定義はどうでもいいんだよ こういう機能があると便利という提案に対して、 それはこの機能でカバーできるから不要であると反論するならば、 全てのケースでカバー可能という悪魔の証明に挑むことになる 代替の方法はあまり良くなくて、提案どおりが最適なんだから、 反論の間違いを認めないと何も進まない
228 名前:デフォルトの名無しさん [2024/10/19(土) 11:40:20.05 ID:3bJ6rPck0.net] また時刻の頭に0が入っていないとかいう馬鹿と同じ馬鹿か
229 名前:デフォルトの名無しさん [2024/10/19(土) 12:10:24.78 ID:3T8uATjna.net] >>219 >>215 嫁
230 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 12:13:44.20 ID:RjXmMaIpd.net] teeは全てのケースでカバー可能
231 名前:デフォルトの名無しさん [2024/10/19(土) 13:21:31.18 ID:brAMeERq0.net] あるソフトウェア会社にテスターとして入ったが、 メカ音痴、通信音痴の詐欺人材である。 仕事をやったフリをするのが難しいので、 バグを発見した際はすぐに報告せず、 ストックしておいて小出しに報告するやり方でしのいだ。 なにか問題が発生した際は、 知らない、オレじゃない、アイツがやった、もう済んだこと を貫徹する現場猫を
232 名前:デフォルトの名無しさん mailto:sage [2024/10/19(土) 13:34:16.86 ID:7nKsGerl0.net] オアシス運動w
233 名前:デフォルトの名無しさん [2024/10/19(土) 14:24:41.30 ID:5nOU6ym70.net] バカは何やらせてもダメなんだな
234 名前:デフォルトの名無しさん [2024/10/19(土) 17:21:49.93 ID:57zOCZIx0.net] だれか教えて。 実行環境はJupyterLab Python3.6.3 今までしっかり動いていたが今朝になって急にPyiCloudがエラーを吐くように。 PyiCloudFailedLoginException: ('Invalid email/password combination.', PyiCloudAPIResponseException('Service Temporarily Unavailable (503)')) ちなみに同じIDとパスでiPhoneやPCのWebからはログインが出来てる。 これうちだけの環境で起きてるだけかな?
235 名前:デフォルトの名無しさん [2024/10/19(土) 20:22:07.21 ID:mCfaJTvfa.net] >>229 >>229 嫁
236 名前:デフォルトの名無しさん mailto:sage [2024/10/20(日) 02:09:35.96 ID:FYgfn/lt0.net] 絵に描いたような老害がおるな
237 名前:デフォルトの名無しさん (ワッチョイ c697-6Oo2) [2024/10/20(日) 18:07:25.12 ID:57kWXpit0.net] >>230 >>230 レスの意味がわからん。 一応、昨日の遅くからようやく開発元が認識をしたらしい。 どうもアップル側のセキュリティの方法が変わったとのこと、しばらく対応まちだな。
238 名前:デフォルトの名無しさん mailto:sage [2024/10/20(日) 22:57:52.56 ID:XWbRdnBX0.net] >>229 seleniumのwebdriver-managerもそうだけど、こう言う「間を介する」モジュールって片方のアップデート次第で不都合起きるからめんどくさいよね。
239 名前:デフォルトの名無しさん mailto:sage [2024/10/20(日) 23:03:29.57 ID:deI+4SvX0.net] windows = gw.getAllTitles() ←windowsはlist型と表示されてる for window in windows: ←windowsはリスト型なのに、windowがAnyになる これなんでAnyになるのか原因わかる人いますか?もう全然分からない・・・ ただリストの中をwindowで回したいだけなのに・・・
240 名前:デフォルトの名無しさん mailto:sage [2024/10/20(日) 23:38:07.71 ID:UoXQ+/wnH.net] >>234 何を悩んでるん? 型を気にしなくていいのがPythonを使う最大の強みじゃん
241 名前:デフォルトの名無しさん mailto:sage [2024/10/21(月) 03:31:23.77 ID:1Z2dcRpO0.net] >>234 Listの各要素はなんでも持てる型だからAny >Any >制約のない型であることを示す特別な型です 実際にリストに入ってるデータの型名併記 for window in windows: print(type(window), window)
242 名前:デフォルトの名無しさん [2024/10/21(月) 09:33:53.50 ID:D69IqQRS0.net] >>233 どうもサードパーティらiCloudに接続する方法を根本から変えているっぽくて、かなり大幅な改変が必要とのこと。 正規のライブラリを使っていないアプリケーションでは大規模に影響がでているはず。 とはいえ、もうRuby界隈の方は対応終わってるらしく、方法も公開されているから、Pythonの方も数日の辛抱という感じなのでは?と思っている。
243 名前:デフォルトの名無しさん mailto:sage [2024/10/21(月) 11:10:24.41 ID:cZ+nN4qG0.net] Appleが許可してない不正な方法でアクセスしてるんだから何が起きても文句は言えんよね HTTP 503が返されてるのに'Invalid email/password combination.'扱いにしちゃう雑な作りのほうが気になる
244 名前:デフォルトの名無しさん mailto:sage [2024/10/21(月) 14:35:51.14 ID:lFfmrxXT0.net] icloudってiPhoneなくてもログインできないと詰むからガバガバなんだよね 今時あんなガバガバそうそうないぞ
245 名前:デフォルトの名無しさん [2024/10/23(水) 14:24:57.07 ID:CetgrrtLa.net] governance不合格
246 名前:デフォルトの名無しさん [2024/10/30(水) 00:00:42.89 ID:N5ISBsY60.net] pythonで不思議なのがif文 例えばこんな感じ。 name = input() print("Hello " + name) if name == "python": print("Welcome") else: print("Goodbye") このケースは二つだけのケースだが 三つのケースはelse:を追加 これって例えば誕生日きくときに ifで1月 elifで2−11月 else12月。 これであってる? なんかかなり面倒だからなんとかしてほしいw
247 名前:デフォルトの名無しさん [2024/10/30(水) 00:03:09.96 ID:N5ISBsY60.net] あ、そっか。 まとめればいいだけだわ。 解決しましたw 2−11をまとめるとスッキリするねw
248 名前:デフォルトの名無しさん [2024/10/30(水) 00:27:22.21 ID:N5ISBsY60.net] マッチつかおっとw list = [1, 2, 3, 4, 5, 6, 8, 10, 11, 13, 15, 17, 19, 20, 22, 23] list_mult2 = [] list_mult3 = [] list_others = [] for i in list: match i: # 2 の倍数を格納 case i % 2 == 0: list_mult2.append(i) # 3 の倍数を格納 case i % 3 == 0: list_mult3.append(i) # その他 case _: list_others.append(i)
249 名前:デフォルトの名無しさん [2024/10/30(水) 00:28:36.78 ID:N5ISBsY60.net] 上記訂正 # 分割する数字 list = [1, 2, 3, 4, 5, 6, 8, 10, 11, 13, 15, 17, 19, 20, 22, 23] list_mult2 = [] list_mult3 = [] list_others = [] for i in list: match i: case i if i % 2 ==0: list_mult2.append(i) case i if i % 3 ==0: list_mult3.append(i) case _: list_others.append(i) #これでよし!w
250 名前:デフォルトの名無しさん [2024/10/30(水) 00:31:39.11 ID:N5ISBsY60.net] switch文かなり便利やな。 match beer_style: # Pilsner, IPA, Hazy IPA and others case "Pilsner": result = "First drink" case "IPA": result = "I like it" case "Hazy IPA": result = "Cloudy and cloudy" case _: # ワイルドカードパターン result = "I like most beers" こんなに簡単にできるんだ。 今までif文がばからしいww
251 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 00:32:21.56 ID:E1mCSTtf0.net] fall-throughしないから6の倍数のやつがダメだろ
252 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 00:35:14.70 ID:odUE1a8w0.net] if elif elseを置き換えるだけではmatchにする有り難みがない もっとアクロバットなことができるけど、 そんなことをしたらpythonでなくなる気がする
253 名前:デフォルトの名無しさん [2024/10/30(水) 00:35:14.71 ID:N5ISBsY60.net] day = 3 match day: case 1: print("今日は月曜日です。") case 2: print("今日は火曜日です。") case 3: print("今日は水曜日です。") case 4: print("今日は木曜日です。") case 5: print("今日は金曜日です。") case 6: print("今日は土曜日です。") case 7: print("今日は日曜日です。") case _: print("無効な日です。")
254 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 00:36:51.27 ID:E1mCSTtf0.net] どれもdictionaryにまとめるパターン
255 名前:デフォルトの名無しさん (ワッチョイ fb16-1Wnr) [2024/10/30(水) 00:43:34.90 ID:N5ISBsY60.net] fruit = "apple" match fruit: case "apple" | "banana" | "cherry": print("これは一般的な果物です。") case "kiwi" | "mango": print("これはトロピカルフルーツです。") case _: print("これは知らない果物です。") 複数のマッチ。
256 名前:デフォルトの名無しさん (JP 0Heb-k86b) mailto:sage [2024/10/30(水) 00:46:48.67 ID:3XYQLByjH.net] アホだ 他言語ではswitchはバグの元って忌み嫌われてるのに 今になってわざわざ導入したPython陣営の愚かさよ
257 名前:デフォルトの名無しさん (ワッチョイ fb16-1Wnr) [2024/10/30(水) 00:49:17.11 ID:N5ISBsY60.net] >>251 match 文はどう? 使い勝手がよいんだがw
258 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 00:54:05.39 ID:E1mCSTtf0.net] >>250 キウイはトロピカルフルーツではないです バナナはトロピカルフルーツです
259 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 01:03:26.08 ID:3XYQLByjH.net] >>252 breakを書かないのが気持ち悪い やはり条件分岐はifに勝るものなし
260 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 01:07:30.76 ID:odUE1a8w0.net] switchにbreakがあるのが自然な感覚なら、if文もbreak要るやろ アセンブラと一対一対応なただのジャンプ命令を高級言語にしただけなんだから
261 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 01:23:42.78 ID:bt1w6ELFH.net] >>255 多分に感覚的なものだけどね ifはelseというキーワードにより分岐から分岐に処理が流れることはないとはっきりわかるからbreakは不要 switchはそれがわからないからbreakがないと気持ち悪い >>250 で言えば、2個めのcaseからはelse caseとする設計なら安心できる
262 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 07:50:49.92 ID:GeZTCF7U0.net] この場合は、と書いてるのに、それ以外の場合に処理が突っ込んでいくのが異常 自然言語として読んでそんな解釈する奴は皆無 C言語のswitchは実質goto文で、忌避すべき悪しき構造
263 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 08:34:25.79 ID:bt1w6ELFH.net] >>257 C、Java、JacaScriptという錚々たるメンバーでbreakが要るんだからしょうがないじゃない あとChatGPTに聞いてみたら、下記の記述があったけどこんなのが一般的とか言われて俺もまだまだだなと思った ----- Pythonには switch 文はありませんが、代わりに辞書を使った条件分岐が一般的です。この場合、各条件が明示的に処理されるため、break は不要です。 switch_dict = { 1: lambda: print("処理1"), 2: lambda: print("処理2"), } switch_dict.get(value, lambda: print("デフォルト処理"))()
264 名前:デフォルトの名無しさん [2024/10/30(水) 13:37:25.39 ID:N5ISBsY60.net] 100さんへ ALL PYTHONDでもよくね?
265 名前:デフォルトの名無しさん [2024/10/30(水) 13:40:41.42 ID:N5ISBsY60.net] PHPでPYTHONやると語尾が気持ち悪くなるW だっていつもコロンだか、セミコロンつかうじゃん?phpって だから最初わしも慣れるのに苦労したW
266 名前:デフォルトの名無しさん mailto:sage [2024/10/30(水) 13:56:31.26 ID:DhwGc29Ga.net] HDLだとcaseで充分なんだよな
267 名前:デフォルトの名無しさん [2024/10/30(水) 14:02:40.72 ID:DhwGc29Ga.net] >>258 アホはこれみてpythonは関数型言語(キリっ)とか言い出しそう
268 名前:デフォルトの名無しさん mailto:sage [2024/11/02(土) 13:35:04.63 ID:cytI8wNj0.net] 同じ階層のlib.pyにdef func()があって、main.pyから import lib だけでfunc()使えなかったっけ lib.func() なら使えるし、 from lib import func でも使えるけど、 import lib だけでも使えてるケースがあるのに違いが判らん
269 名前:デフォルトの名無しさん [2024/11/02(土) 13:56:04.51 ID:QT6/c5p90.net] 使えるわけねーだろドキュメントくらい読め
270 名前:デフォルトの名無しさん mailto:sage [2024/11/02(土) 14:01:43.84 ID:cytI8wNj0.net] サンプルを書いてみると使えないんだけど、 実際に動いてるコードでは使えてるとしか思えないんだよな
271 名前:デフォルトの名無しさん [2024/11/02(土) 15:09:33.21 ID:+GKIPsT4a.net] from lib import *
272 名前:デフォルトの名無しさん [2024/11/02(土) 15:24:56.26 ID:+GKIPsT4a.net] lib.py の最後に __builtins__['func'] = func でいけるかな
273 名前:デフォルトの名無しさん mailto:sage [2024/11/02(土) 15:25:32.30 ID:+GKIPsT4a.net] lib.py の最後に __builtins__['func'] = func でいけるかな
274 名前:デフォルトの名無しさん [2024/11/02(土) 16:45:29.14 ID:TIz0sdCnd.net] 黒魔術禁止
275 名前:デフォルトの名無しさん (ワッチョイ 71b8-jwtj) mailto:sage [2024/11/03(日) 05:30:42.12 ID:3rcZcbik0.net] >>265 じゃあそのコード出してみればいいのに
276 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 09:54:14.13 ID:3P3Nu4GE0.net] 結局、動いてはいなかった ImportError: cannot import name 'func' from 'lib' というエラーにはならずに、とりあえず走り始める で、funcを呼んだタイミングでエラーになるけど、 concurrent.futures.ThreadPoolExecutor.submit の先にあるので、 エラー表示は出ないし処理も止まらないだけだった 何なら、import lib すらなくても同じ動作になる
277 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 14:00:30.85 ID:3P3Nu4GE0.net] エラー出ない問題は future = concurrent.futures.ThreadPoolExecutor.submit(func) future.result() こんな風にすると解決する concurrent.futures.ThreadPoolExecutor.submit(func).result() でもok
278 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 16:59:41.21 ID:oTBqZLJpM.net] なんなのこの日記
279 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 17:08:44.45 ID:3P3Nu4GE0.net] 但し、result()を評価すると完了を待つので同期処理になってしまう 多重処理で高速化できないので、デバッグが終わったら外す
280 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 17:09:12.43 ID:L07G869G0.net] 言っても無駄だから「集団無視」するのがいい
281 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 17:43:09.87 ID:lgsiIHy30.net] >>273 この福祉系キチガイのせいでしょ>>87
282 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 18:43:10.23 ID:aWrgo6rr0.net] 五十四の日記
283 名前:デフォルトの名無しさん [2024/11/03(日) 19:21:34.34 ID:4g0SxEOpd.net] 過疎ってるね
284 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 20:18:30.62 ID:rroxZfopd.net] seleniumやりたくてpython始めたけど エラーばっかしで嫌になってきた ラジオボタン選択したいだけなのにうまくいかなくて調べてったらこんな事になった element = driver.find_element(By.ID, "spAccKbn2") action = webdriver.common.action_chains.ActionChains( driver ) action.move_to_element_with_offset( element , 1 , -1 ) action.click() action.perform()
285 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 22:36:57.37 ID:m0ql+Kks0.net] 続 五十四の日記
286 名前:デフォルトの名無しさん (ワッチョイ 8554-u42f) mailto:sage [2024/11/03(日) 23:08:48.69 ID:3P3Nu4GE0.net] 過疎るのは別に問題じゃないけど、課題はS/N比だな 何故内容のないことを書き込みたがるのか
287 名前:デフォルトの名無しさん (ワッチョイ 9e83-aO9f) mailto:sage [2024/11/03(日) 23:24:53.04 ID:upFikudE0.net] おまいう
288 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 23:42:27.04 ID:Hsbf+jvP0.net] 福祉施設からきた知的障害者が荒らしてるよな>>87
289 名前:デフォルトの名無しさん mailto:sage [2024/11/03(日) 23:43:00.68 ID:Hsbf+jvP0.net] >>279 失せろ知的障害朝鮮人
290 名前:デフォルトの名無しさん [2024/11/07(木) 22:30:21.43 ID:0vDQcGjY0.net] pythonってなんで語尾に;がないの? この語尾が気持ち悪いw あとif文やelifが:だけ:があるのが慣れないなw
291 名前:デフォルトの名無しさん [2024/11/08(金) 00:05:39.08 ID:te03q3B3d.net] >>285 お前みたいな馬鹿がいるこの世の中が気持ち悪い お前みたいな馬鹿が生きていられることになれないなw
292 名前:デフォルトの名無しさん mailto:sage [2024/11/08(金) 12:27:31.09 ID:F9yTI1pla.net] pythonは文末に;憑いてても動く
293 名前:デフォルトの名無しさん [2024/11/08(金) 18:53:48.94 ID:y8v+DuF60.net] >>285 改行コードを終わりと見做すプログラミング言語だから
294 名前:デフォルトの名無しさん mailto:sage [2024/11/08(金) 19:07:12.95 ID:cLnY3Hqj0.net] 改行に意味があるというよりは、ブロック構造をインデント任せにしてるからだけど {と}でブロックが明示されてたらエディタの機能でブロックの先頭と末尾を行き来できるけど、 python専用エディタだとそんなことできたりする? インデント深いと読めなさすぎて、あの手この手で浅くする
295 名前:デフォルトの名無しさん [2024/11/08(金) 19:09:12.46 ID:y8v+DuF60.net] >>289 初心者にそんな説明をするのは悪手
296 名前:デフォルトの名無しさん mailto:sage [2024/11/08(金) 19:38:39.84 ID:BBiCQq+eH.net] >>289 できないと思うけど そもそもブロック単位の移動という操作が開発で必要とは思えない
297 名前:デフォルトの名無しさん mailto:sage [2024/11/08(金) 19:41:06.28 ID:G9PsHqcG0.net] >>285 別に付けてもいいぞ 何なら一行に複数の文も書ける
298 名前:デフォルトの名無しさん [2024/11/08(金) 19:56:04.57 ID:y8v+DuF60.net] >>292 Pythonの原作者の悪趣味を勧めるなw
299 名前:デフォルトの名無しさん [2024/11/08(金) 19:58:22.87 ID:y8v+DuF60.net] >>292 意味なく付けていると可読性が下がる
300 名前:デフォルトの名無しさん [2024/11/08(金) 20:28:10.47 ID:c7CpRr710.net] >>288 なんかメインフレーム臭さが漂ってんだよなあ
301 名前:デフォルトの名無しさん (ワッチョイ 75cf-kuJi) mailto:sage [2024/11/08(金) 22:56:15.48 ID:U1OZc4Nd0.net] >>289 vimはできるよ Pythonでパッと見てネスト構造が分からないようなコードは問題がある気がするがブロック単位と移動や編集が便利なのは間違いない
302 名前:デフォルトの名無しさん [2024/11/09(土) 01:03:02.37 ID:6W4F7+P40.net] >>295 セミコロンを付けない言語もそれなりにあるし、Pythonだけがそうというわけではない 最近流行りのだとGoもそう
303 名前:デフォルトの名無しさん mailto:sage [2024/11/09(土) 11:11:55.78 ID:6RYR080/0.net] >>289 改行を文デリミタにするのとブロックの表し方は全然関係ないだろ。 シェルスクリプトとか見てみ。
304 名前:デフォルトの名無しさん (ワッチョイ 926b-4b4N) mailto:sage [2024/11/09(土) 11:58:53.83 ID:wO7HvhhQ0.net] luaも無視してくれるね;
305 名前:デフォルトの名無しさん [2024/11/09(土) 14:29:53.24 ID:B62lCCpIa.net] xxxxxxxxxxxx
306 名前:デフォルトの名無しさん mailto:sage [2024/11/09(土) 15:56:26.85 ID:uvbykfPp0.net] JavaScriptみたいに自明な場合はセミコロンを挿入するって風にすればいいのにな そうすればワンライナーとの相性もよい
307 名前:デフォルトの名無しさん [2024/11/09(土) 16:57:23.68 ID:5wGLeQz90.net] そうするとめちゃくちゃなインデントするやつが絶対でてくるからな
308 名前:デフォルトの名無しさん mailto:sage [2024/11/09(土) 17:24:04.02 ID:LlsVFZwkd.net] vs codeで書いてるけど インデントしてんのにインデントおかしいぞ!って怒ってくる
309 名前:デフォルトの名無しさん mailto:sage [2024/11/09(土) 19:42:57.03 ID:b5zF/lUM0.net] Pythonを使うには 空白文字が判別できるグリフになってるフォントが必要
310 名前:デフォルトの名無しさん [2024/11/09(土) 21:20:12.17 ID:SkJltVwKd.net] >>304 このスレってこういう馬鹿ばっかだな
311 名前:デフォルトの名無しさん mailto:sage [2024/11/09(土) 22:08:58.33 ID:sXoCSO6d0.net] >>305 お前みたいなのがこのスレを破壊したって 自覚持ってくれ
312 名前:デフォルトの名無しさん [2024/11/10(日) 00:52:09.53 ID:H/zpgg/Vd.net] >>306 お前みたいに嘘を撒き散らす馬鹿がいるからだろ
313 名前:デフォルトの名無しさん [2024/11/10(日) 02:54:10.37 ID:NcxfIIMm0.net] >>303 タブと半角スペースが混じっているだけじゃないのか?
314 名前:デフォルトの名無しさん [2024/11/10(日) 07:47:13.73 ID:dkv1a77w0.net] フォントでなくエディター側でも解決できる VS Codeだとタブ文字やスペースを見やすくする設定があるはず 全角スペースはフォント側で可視化されてるものを使うと便利
315 名前:デフォルトの名無しさん mailto:sage [2024/11/10(日) 09:41:38.14 ID:Mocr1U5E0.net] 全角スペースをstrip()が削除するんだから、それがスペースだということは知ってるんだよな なんでインデントに使ったらいけないのか謎
316 名前:デフォルトの名無しさん (ワッチョイ 0530-yjVJ) mailto:sage [2024/11/10(日) 10:07:01.33 ID:3craHbO10.net] 個数で判定するか幅(それも1:2か3:5かそれ以外か)でか、で自転車置き場の屋根より長い議論になることが見えてるから
317 名前:デフォルトの名無しさん (ワッチョイ ad54-CU01) mailto:sage [2024/11/10(日) 10:30:19.57 ID:Mocr1U5E0.net] 個数でも幅でもなく、組み合わせ TABとスペースを混ぜた時と同じ挙動
318 名前:デフォルトの名無しさん [2024/11/11(月) 06:06:38.40 ID:mTrGHtv9a.net] 全角SPはTABでも半角SPでもない
319 名前:デフォルトの名無しさん mailto:sage [2024/11/11(月) 08:13:32.49 ID:XjDPgffN0.net] C言語のブロック記号{}に全角空白もアリにしてと言ってるようなもんだな 日本語の全角空白含めても日本人の一部にしかメリット無いです
320 名前:デフォルトの名無しさん mailto:sage [2024/11/11(月) 14:38:02.82 ID:tRsIxhTt0.net] インデントはタブのみ許可 タブはインデントのみ許可 みたいにガチガチにしてしまえばいいのに そこだけは非常に残念
321 名前:デフォルトの名無しさん mailto:sage [2024/11/11(月) 16:41:38.17 ID:RisB9sc6d.net] タブの存在しない処理系とかあるんじゃないの 知らんけど
322 名前:デフォルトの名無しさん (ワッチョイ 759b-NX7e) mailto:sage [2024/11/11(月) 16:45:22.89 ID:XlNa4SSE0.net] https://www.openwork.jp/company.php?m_id=a0910000000FrzY
323 名前:デフォルトの名無しさん mailto:sage [2024/11/11(月) 17:04:38.11 ID:7xH2ULqH0.net] TAB使うなって言うからスペースでインデントしてるけど、 エディタがデデントに対応してなくて無駄に大変
324 名前:デフォルトの名無しさん mailto:sage [2024/11/12(火) 09:00:04.47 ID:MVEhN2a60.net] なぜ対応のエディタを使わないのか VSコードでいいだろ
325 名前:デフォルトの名無しさん [2024/11/12(火) 20:00:16.97 ID:v7TGFNyn0.net] >>313 スペースのことを「SP」と書いている人を初めて見たわ
326 名前:デフォルトの名無しさん (ワッチョイ e38e-R46Z) [2024/11/12(火) 20:07:54.86 ID:v7TGFNyn0.net] Pythonが誕生したころは、まだ1バイト使うか4バイトも使うか記憶装置の容量では悩むレベルだったから、タブを使うか半角スペースを複数個使うかで
327 名前:デフォルトの名無しさん (ワッチョイ e38e-R46Z) [2024/11/12(火) 20:08:36.68 ID:v7TGFNyn0.net] 人によって意見がわれていた
328 名前:デフォルトの名無しさん (ワッチョイ 4b8e-DV/N) [2024/11/12(火) 20:25:38.59 ID:J1Sn69yS0.net] >>320 お前が何も知らない馬鹿なだけかと
329 名前:デフォルトの名無しさん mailto:sage [2024/11/12(火) 21:12:33.59 ID:ZcEeG3hE0.net] 半角SPw
330 名前:デフォルトの名無しさん mailto:sage [2024/11/12(火) 21:16:46.59 ID:nvqj0JfO0.net] 日本人の一部にしかメリットなくても、残りの誰にもデメリット無いなら、 それはメリットしか無いのでは
331 名前:デフォルトの名無しさん [2024/11/13(水) 02:13:50.19 ID:lxEAsUm8a.net] デメリットだらけ
332 名前:デフォルトの名無しさん [2024/11/14(木) 19:11:38.32 ID:g26vUJe4F.net] ここで質問しているやつはPythonの資格対策本でも買って勉強しろ
333 名前:デフォルトの名無しさん [2024/11/15(金) 10:25:38.19 ID:G6HDJDaQ0.net] uvはactivate必要なのか pyenvとpoetryでいいわ
334 名前:デフォルトの名無しさん [2024/11/15(金) 17:45:24.05 ID:Jz1yaJFv0.net] >>328 プロアクティブが必要
335 名前:デフォルトの名無しさん mailto:sage [2024/11/16(土) 19:00:54.48 ID:ILOr4dg40.net] 既存のファイルを'w'でopenする時に、他のプロセスがアクセスしているとOSErrorになることがある ならないこともある ファイルが大きいとなるっぽい なんとか強引に開けないものか
336 名前:デフォルトの名無しさん (ワッチョイ 1b5c-Bg8t) [2024/11/16(土) 21:38:03.01 ID:JvbcygrM0.net] width同じでheightバラバラのjpg画像が大量にあるんだがこれをpdfに上下に敷き詰めるにはどうしたらいいの?
337 名前:デフォルトの名無しさん mailto:sage [2024/11/16(土) 23:24:04.57 ID:3kqPnMcZ0.net] >>330 windowsならWin32 APIでsharing modeを指定 >>331 bin packing problemでググれ
338 名前:デフォルトの名無しさん mailto:sage [2024/11/17(日) 11:06:04.94 ID:tn0ahmRja.net] print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), np.timedelta64(30, 'D'))) で ['2024-11-01' '2024-12-01' '2024-12-31' '2025-01-30' '2025-03-01' '2025-03-31' '2025-04-30'] print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), np.timedelta64(31, 'D'))) で ['2024-11-01' '2024-12-02' '2025-01-02' '2025-02-02' '2025-03-05' '2025-04-05'] なんだが ['2024-11' '2024-12' '2025-01' '2025-02' '2025-03' '2025-04'] が欲しい
339 名前:デフォルトの名無しさん mailto:sage [2024/11/17(日) 12:17:30.72 ID:EcgVWlk90.net] >>333 月ベースで計算したいのになぜ日ベースで計算しようとするのか In : np.arange(np.datetime64('2024-11'), np.datetime64('2025-05')) Out: array(['2024-11', '2024-12', '2025-01', '2025-02', '2025-03', '2025-04'], dtype='datetime64[M]')
340 名前:デフォルトの名無しさん mailto:sage [2024/11/17(日) 12:24:22.30 ID:33eX3D3e0.net] 関係ないけど、excelで日毎のデータが何年分もあって、 グラフの横軸を年月で表示しようとしても微妙にうまく行かない
341 名前:デフォルトの名無しさん mailto:sage [2024/11/17(日) 13:42:46.70 ID:tn0ahmRja.net] >>334 ありがとう print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), np.timedelta64(1, 'M'))) でエラーだったからどうしたもんかと [] [ここ壊れてます]
343 名前:デフォルトの名無しさん mailto:sage [2024/11/17(日) 14:01:43.54 ID:tn0ahmRja.net] print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), dtype='datetime64[M]')) これでもうまくいったわ
344 名前:デフォルトの名無しさん [2024/11/17(日) 14:12:53.82 ID:ENY5bRjq0.net] >>332 回答ありがたいんだが番号振られてあるから順番に上から下に敷き詰めたいんだが
345 名前: [2024/11/17(日) 17:22:39.74 ID:z11Q5dQO0.net] 下記の内容で Microsoft Copilot に聞いてみた で教えてくれる ------ pythonでwidth同じでheightバラバラのjpg画像が大量にあるんだがこれをpdfに上下に敷き詰めるにはどうしたらいいの? 番号振られてあるから順番に上から下に敷き詰めたいんだが
346 名前:デフォルトの名無しさん mailto:sage [2024/11/17(日) 17:33:31.08 ID:33eX3D3e0.net] pdfの高さが決まってて、そこに入るだけ
347 名前:順番に入れてくだけの話? if トータル高さ > pdfの高さ: 次のページに というだけのアルゴリズムでいけるのでは [] [ここ壊れてます]
348 名前: [2024/11/17(日) 17:40:21.98 ID:z11Q5dQO0.net] 聞いてみた結果 --from PIL import Image from reportlab.lib.pagesizes import portrait from reportlab.pdfgen import canvas import os # 画像が保存されているディレクトリのパス image_dir = 'my_folder' output_pdf = 'output.pdf' # 画像ファイルのリストを取得し、ファイル名順にソート image_files = sorted([f for f in os.listdir(image_dir) if f.endswith('.jpg')]) # 画像の幅を取得(すべての画像が同じ幅である前提) first_image = Image.open(os.path.join(image_dir, image_files[0])) width, _ = first_image.size # PDFキャンバスの作成 c = canvas.Canvas(output_pdf) # 画像をPDFに追加 for image_file in image_files: image_path = os.path.join(image_dir, image_file) img = Image.open(image_path) img_width, img_height = img.size if img_width != width: raise ValueError(f"Image {image_file} has a different width: {img_width}") # ページサイズを画像の縦サイズに設定し、新しいページを追加 c.setPageSize((width, img_height)) c.showPage() # 画像をPDFに描画 c.drawImage(image_path, 0, 0, width=width, height=img_height) # PDFの保存 c.save()
349 名前: [2024/11/17(日) 17:51:48.14 ID:z11Q5dQO0.net] --tabがわからん # 画像をPDFに追加 for image_file in image_files: image_path = os.path.join(image_dir, image_file) img = Image.open(image_path) img_width, img_height = img.size if img_width != width: raise ValueError(f"Image {image_file} has a different width: {img_width}") # ページサイズを画像の縦サイズに設定し、新しいページを追加 c.setPageSize((width, img_height)) c.showPage() # 画像をPDFに描画 c.drawImage(image_path, 0, 0, width=width, height=img_height) # PDFの保存 c.save()
350 名前:デフォルトの名無しさん mailto:sage [2024/11/17(日) 17:56:32.18 ID:33eX3D3e0.net] datにはインデントのスペースも書かれてるんだけどな 表示のレンダリングで落としちゃうだけなので、 ブラウザに先頭のスペースを無視しないモードがあれば済むのに
351 名前:デフォルトの名無しさん [2024/11/18(月) 07:06:37.63 ID:INV+aJIp0.net] 【ナゾロジー】サイコパスは「痛みを伴う失敗」から学習できない! [すらいむ★] itest.5ch.net/egg/test/read.cgi/scienceplus/1731838156
352 名前:デフォルトの名無しさん [2024/11/18(月) 12:58:55.73 ID:0TuJxtFYa.net] >>343 専ブラ
353 名前:デフォルトの名無しさん [2024/11/22(金) 01:57:46.65 ID:icDgwF6r0.net] 某キャリア回線アプリのON、OFFをAPI送信で叩きたいけど POSTMANでは正常に叩けてアプリに反映されれるけど python経由だとレスポンスが正常だけどなぜかアプリ側に反映されない。 POSTMANと全く同じヘッダーつけてもダメだった。 わかる方いるかしら?
354 名前:デフォルトの名無しさん [2024/11/22(金) 23:22:02.38 ID:axFgaWRBH.net BE:629052145-2BP(1000)] https://img.5ch.net/ico/nida.gif EchoAPIを使い始めて、このツールのおかげでAPIテストが効率化されし、機能開発にももっと集中できるようになった!
355 名前:デフォルトの名無しさん [2024/11/23(土) 00:31:01.88 ID:IcKkVXcm0.net] >>346 自己解決 APIが違った。 似たようなAPIがあって確認ミス
356 名前:デフォルトの名無しさん mailto:sage [2024/11/25(月) 01:12:59.73 ID:gOO2TZvc0.net] ハイパーモダンpython読みにくいなこれ 翻訳は悪いとは思わない 説明対象になる要素が出てくる順とか元の文章の流れが悪すぎる
357 名前:デフォルトの名無しさん [2024/11/25(月) 08:02:05.82 ID:icG0ziFd0.net] これか。何か嬉しいことが書いてあるのかな。 cjolowicz.github.io/posts/hypermodern-python-01-setup/
358 名前:デフォルトの名無しさん [2024/11/25(月) 09:32:40.34 ID:SsaYg1Am0.net] 科学 + ンニュース 5ch 保守派もリベラル派も「自分の政治的信念に合致したニュース」を信じやすいという研究結果 [すらいむ★] https://itest.5ch.net/egg/test/read.cgi/scienceplus/1732447647 コメントも含めて読むと 陰謀論が収まら無い理由が判明する
359 名前:デフォルトの名無しさん mailto:sage [2024/11/29(金) 17:36:52.72 ID:1nbpjyP00.net] byteからstrへの変換がdecodeなんだから、 open()のencodingはdecodingが正解なのでは
360 名前:デフォルトの名無しさん [2024/11/30(土) 01:20:49.70 ID:hNQfUfJr0.net] encodingは変換という意味だから、いいのでは
361 名前:デフォルトの名無しさん [2024/11/30(土) 08:09:26.50 ID:VXfE+2kW0.net] 日常生活においてはいいけど、 Python のドキュメントに当たるときは、あやふやにしていると混乱する。
362 名前:デフォルトの名無しさん mailto:sage [2024/11/30(土) 08:31:45.38 ID:OzjPxg3T0.net] 'r'でも'w'でもencoding=なんだから、そういう意味じゃないのは自明だったな encoding はファイルのエンコードやデコードに使われる text encoding の名前です There are a variety of different text serialization codecs, which are collectively referred to as "text encodings".
363 名前:デフォルトの名無しさん mailto:sage [2024/11/30(土) 14:43:48.94 ID:wliauO6ld.net] Streamlitアプリのパッケージ管理するなら、今ならuvがいいですか? まだpython始めて1年くらいで、メインはNodejsフロントエンドなんですけど、今までconda使ってたんですが、しばらく触ってないとどの環境でどのアプリのどのブランチ触ってたかわかんなくなります、、、
364 名前:デフォルトの名無しさん [2024/11/30(土) 15:01:57.04 ID:l0dFcapba.net] git
365 名前:デフォルトの名無しさん [2024/11/30(土) 17:23:52.72 ID:UTmme7fc0.net] >>356 venv
366 名前:デフォルトの名無しさん mailto:sage [2024/11/30(土) 17:33:17.56 ID:OzjPxg3T0.net] 環境の管理はまだ未成熟な気がするし、 何もしなくてもいい気もする
367 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 06:15:27.09 ID:qIIa6Po8F.net] 何かしら管理はしないと、 あとで触ったら時にいつのまにか動かなくなってたりしませんか? uv触ってみました、良いですねこれ 仮想環境アクティブにしなくてもそのままスクリプト実行できますし、lockファイルがクロスプラットフォームなのがいいです 本当にnpmみたいです
368 名前:デフォルトの名無しさん [2024/12/01(日) 06:50:38.03 ID:usl5rUYN0.net] AIでpythoのプログラム作成しているんだけど 完成したから、おしゃれなコメントをつけてって入れたら なんかずっと返ってこない。 すごい、おしゃれなコメントを作っているのかな
369 名前:デフォルトの名無しさん [2024/12/01(日) 07:06:01.18 ID:usl5rUYN0.net] おしゃれコメント生成はやめどきが難しい # 画像やテキストを解析し、結果をお届け # ファイルがドロップされたら画像を読み込む魔法 # ここからがメインの舞台 # 画像を一瞬でBase64に変身させる # 新しい会話をエレガントに開始
370 名前:デフォルトの名無しさん (ワッチョイ 66e6-maZQ) mailto:sage [2024/12/01(日) 17:18:14.50 ID:/Q96hWUr0.net] driver.find_element(By.XPATH, ***).send_keys("***")
371 名前:デフォルトの名無しさん (ワッチョイ 66e6-maZQ) mailto:sage [2024/12/01(日) 17:24:13.28 ID:/Q96hWUr0.net] driver.find_element(By.XPATH, ***).send_keys("***") でフォームに入力し、書き込みボタンを押して投稿するものを書いたのですが、 入力されないしボタンも押されず、固まっていることが頻繁にあります これを防ぐ方法はありますか?
372 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 17:39:11.83 ID:tRbUIFef0.net] waitを入れる
373 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 18:11:22.37 ID:1JLx1bUH0.net] ログはどうなってる?
374 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 18:35:41.80 ID:/Q96hWUr0.net] 初心者なのでよく分かっていないですけど、コマンドプロンプトには何も表示されていないです。 書き込みできないまま止まっていて、getで再度サイトにアクセスすると書き込めるようになるときがあります
375 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 18:40:02.51 ID:tRbUIFef0.net] input()とかbreakpoint()とかで止めながら試す
376 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 19:14:40.51 ID:/Q96hWUr0.net] >>368 ありがとうございます 後ほど試してみます
377 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 21:56:37.25 ID:/BlP4ndo0.net] どうしてもseleniumを使い続けなきゃいけない理由がないならplaywrightとかもう少しモダンなやつ使ったら? send_keysが思ったように動かないとか手動でwaitいれなきゃいけないとか2020年代にする話じゃない
378 名前:デフォルトの名無しさん (ワッチョイ fb54-5MfX) mailto:sage [2024/12/01(日) 22:24:05.62 ID:tRbUIFef0.net] RPAなんかも、細かく指定する原始的なのと勝手にやってくれる抽象的なのが同居してる 一旦苦労しといて、新しいのは楽だぜいとステップを踏んだ方がきっと楽しい
379 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 23:08:44.46 ID:1o85ezT5d.net] (1)用語をいちいち意味不明なモンティパイソン用語に置き換えてあるのがうざい。それ以外も趣味悪い置き換えばかり。 (2)参考書でページ跨ぐ時にインデントの位置が読み取りにくい
380 名前:デフォルトの名無しさん mailto:sage [2024/12/01(日) 23:16:42.03 ID:gMHLdZsad.net] アップデートあると動かなくなるとかやめて
381 名前:デフォルトの名無しさん [2024/12/02(月) 00:25:56.92 ID:7m/pDVQD0.net] #普通のクリックが効かない時(紐づいてるスクリプトを実行) #--------------------------------------------------------------------------- btn=driver.find_element(By.CLASS_NAME,'xxxBtn') driver.execute_script('arguments[0].click();', btn) #同じ名前の要素がある場合- 2つ目をクリック #--------------------------------------------------------------------------- elems=driver.find_elements(By.CLASS_NAME,'xxx_btn') elems[1].click()
382 名前:デフォルトの名無しさん [2024/12/02(月) 04:52:39.52 ID:7m/pDVQD0.net] 要素が存在していても、フォーカスが違う時はsend_keysなどは動かない 親要素をクリックするとかしてから行う oya=driver.find_element(By.xx,親要素) oya.click() -- フォーカスが別フレームなら戻すとか is_displayed, driver.switch_to.frame, ActionChains(キー送信等で使う) とかも参照して (いつもと違うのが(ポップアップみたいのが)、出てくると、あれ動かないみたいになる..はまるのをつぶすのはめんどくさい) あと、XPathはHTMLの構造に依存するから、表示とかが変わると、同じにはならないから、使わない >getで再度サイトにアクセスすると書き込めるようになるときがあります これに当てはまる?
383 名前:デフォルトの名無しさん mailto:sage [2024/12/02(月) 20:05:34.47 ID:s4V+qYg3d.net] ハイパーモダンpythonは後の章に行くにつれて 話が繋がってくる 最初がきつい
384 名前:デフォルトの名無しさん [2024/12/03(火) 03:51:20.88 ID:N6mUJPJA0.net] コボル、BASIC から初めて次にC/C++にしたが 考えるとPythonのカッコ使わない記述は古典すぎる コボル用の原稿用紙みたいなマス目の紙がうってたが 昔風の記法は紙に書くとかエディタにカッコの認識機能がなかったとかで 昔はよかったがいまは逆に不利では
385 名前:デフォルトの名無しさん [2024/12/03(火) 05:57:29.53 ID:e3hO3RHt0.net] COBOLのインデントはただの見た目。pythonはインデントで認識するから、 見た目は同じでも違う
386 名前:デフォルトの名無しさん mailto:sage [2024/12/03(火) 09:41:07.24 ID:kLLVN+mm0.net] >>364 人の目にページが表示されるまで細かくソースが変化するサイトがあって期待したエレメントを誤認識してクリック空振りとかあり得る 自分はクリック処理に入る前にページを完全に読み込んだか判断するようにしている 例えば「ここをクリック」のようなページ読み込み完了が確認できるような文字列がソースにあるか条件にし無ければwaitしてループみたいなの(できれば無限ループ避けに回数超えたらエラー終了とかいれて)
387 名前:デフォルトの名無しさん mailto:sage [2024/12/03(火) 09:42:35.91 ID:KPEF2J76H.net] >>377 何ゆってんの カッコが要らないことはプログラミングの革命だよ カッコをタイプするのに全プログラマが消費している手間と時間が年間どれだけになるか計算しろ
388 名前:デフォルトの名無しさん (ワッチョイ b901-JDvb) mailto:sage [2024/12/03(火) 10:08:04.98 ID:/RopnMZy0.net] IDE的なものを使ったことがないのかな? IDEがサポートしてくれない手動アンインデント・手動フォーマットが必要なPythonのほうがタイプ量は多くなるぞ
389 名前:デフォルトの名無しさん (ワッチョイ 3f2a-L1ek) [2024/12/03(火) 10:08:51.03 ID:d8XC/DSv0.net] 日暮れて途遠し。関数のカッコも許すまじ。
390 名前:デフォルトの名無しさん (ワッチョイ ecd8-ZfKc) mailto:sage [2024/12/03(火) 10:11:04.18 ID:N6mUJPJA0.net] もともとはカッコがなかったはずだ アセンブラ FORTRAN Pascalとか 古典的なほど一行一文で必要性がひくい
391 名前:デフォルトの名無しさん (オッペケ Src1-maZQ) mailto:sage [2024/12/03(火) 12:51:02.33 ID:pPfZPcder.net] 364ですが皆さんアドバイスありがとうございます! 時間のあるときにいろいろ試したいと思います
392 名前:デフォルトの名無しさん [2024/12/03(火) 16:08:05.47 ID:UmbELZIZ0.net] >>380 馬鹿過ぎて話しにならない そんな理屈だとBASICとかが革命ってことになるだろ
393 名前:デフォルトの名無しさん [2024/12/03(火) 16:48:38.38 ID:7+FAz+IT0.net] 馬鹿げた話に馬鹿と突っ込むのは馬鹿っぽく見える。
394 名前:デフォルトの名無しさん (ブーイモ MMba-cbcK) [2024/12/05(木) 19:12:25.57 ID:f+d6ZP2RM.net] >>385 タブや改行と半角スペースを混同して語るのは痛いな
395 名前:デフォルトの名無しさん (ブーイモ MMba-cbcK) [2024/12/05(木) 19:15:05.19 ID:f+d6ZP2RM.net] BASICが詰めた見た目にできるのは構文解析が優秀だからだぞ? アセンブラなんて1行、1命令だから。
396 名前:デフォルトの名無しさん mailto:sage [2024/12/05(木) 20:01:54.48 ID:m3F946dq0.net] >>377 コピペした時のインデントが人間にしかわからんねえしな 欠陥言語だよ
397 名前:デフォルトの名無しさん (ワッチョイ fb54-5MfX) mailto:sage [2024/12/05(木) 20:39:01.52 ID:v//ZhfaU0.net] BASICでインデントすると、貴重なメモリがインデント用に減っていく
398 名前:デフォルトの名無しさん [2024/12/05(木) 23:43:24.89 ID:PwliRaIW0.net] >>390 いつのパソコンだよw
399 名前:デフォルトの名無しさん [2024/12/05(木) 23:44
] [ここ壊れてます]
400 名前::48.64 ID:PwliRaIW0.net mailto: >>389 ブロックを括弧にしたのは可読性が下がったので何とも言えない START、ENDはくどいがこれはこれでわかりやすい [] [ここ壊れてます]
401 名前:デフォルトの名無しさん [2024/12/05(木) 23:45:08.94 ID:PwliRaIW0.net] BEGIN、ENDの間違い
402 名前:デフォルトの名無しさん [2024/12/05(木) 23:45:53.80 ID:PwliRaIW0.net] >>389 ブロックを括弧にしたのは可読性が下がったので何とも言えない BEGIN、ENDはくどいがこれはこれでわかりやすい
403 名前:デフォルトの名無しさん mailto:sage [2024/12/06(金) 05:18:04.91 ID:AALfMO070.net] AIでスラスラ
404 名前:デフォルトの名無しさん mailto:sage [2024/12/06(金) 05:54:20.93 ID:7NYpJagN0.net] byteをhex()で変換すると長い文字列になって読みにくいので、 2文字ずつに区切る方法を誰か書いてないかなと検索したら、 AIが横取りして完全解答を示してきた
405 名前:デフォルトの名無しさん mailto:sage [2024/12/06(金) 07:54:25.37 ID:rsMlOC0k0.net] >>394 分かりにくい
406 名前:デフォルトの名無しさん (ワッチョイ 46df-cbcK) [2024/12/06(金) 16:36:41.30 ID:JVxC5Ump0.net] >>397 括弧は単に慣れているから変に思わないだけ
407 名前:デフォルトの名無しさん mailto:sage [2024/12/07(土) 14:06:32.90 ID:8ekNK8XTa.net] dataをremで並べるのとかな
408 名前:デフォルトの名無しさん mailto:sage [2024/12/08(日) 03:04:53.14 ID:uhFONOyF0.net] >>398 言い方を変えると慣れない つまり使いづらいし分かりにくい
409 名前:デフォルトの名無しさん mailto:sage [2024/12/08(日) 15:49:08.95 ID:s3gWwTLZ0.net] パイチョン嫌い でも開発環境めっちゃ整備されてるな perlがここまで来ていたら
410 名前:デフォルトの名無しさん mailto:sage [2024/12/08(日) 15:56:53.41 ID:am0IRcwN0.net] perlとは方向性がかなり違うからなあ 短期的にはperlの方が楽だけど、結局長い目で見るとpythonできっちり書いた方が楽 perlは例外的なケースもよしなに吸収しといてくれるけど、 pythonに移植してみると気付いてなかった問題が顕在化したりする
411 名前:デフォルトの名無しさん [2024/12/08(日) 16:17:35.04 ID:YHg2sc8K0.net] Pythonはwindowsで長いパス(最長はしらんがおそらく3万字とか)に対応してるので ほぼその目的で利用 C/C++とそれに似てるPHPなどのほうが使いやすいのでこっちで書いてから AI翻訳+修正すればいいとわかった
412 名前:デフォルトの名無しさん mailto:sage [2024/12/08(日) 16:21:58.87 ID:am0IRcwN0.net] NASがext4なので、フルパスで255byteしか使えない 普通にきつい
413 名前:デフォルトの名無しさん (ワッチョイ ff33-4IGW) mailto:sage [2024/12/08(日) 16:35:08.33 ID:koJ73GUG0.net] turtleモジュールの亀かわいい
414 名前:デフォルトの名無しさん [2024/12/09(月) 11:02:22.67 ID:uh4vUAM3a.net] PHPはCと表面上は似てるけど全然違う詐欺みたいな言語だからな
415 名前:デフォルトの名無しさん (ワッチョイ dff4-tB0+) [2024/12/09(月) 13:23:03.85 ID:wWCmXoxS0.net] 科学 + 5ch 【AI】AIはわずか2時間の対話で人間の性格をコピーできる [すらいむ★] https://egg.5ch.net/test/read.cgi/scienceplus/1733576027/ コメントに面白いことが書かれている
416 名前:デフォルトの名無しさん mailto:sage [2024/12/09(月) 13:50:05.32 ID:QWMKV9/M0.net] 最近のプログラミングというのはAIに書かせたコードを切り貼りする作業なわけだが、 その点ではブロックをインデントで表現するスタイルはあまり相性良くないと思うわ コピペ後に手修正が発生することが多い もう一息でAIによる提案を反映するところまでAIにお任せで問題なくなるだろうけど、現状ではまだ人手での反映の方が結局早いことが多いんだよな
417 名前:デフォルトの名無しさん mailto:sage [2024/12/09(月) 16:14:44.29 ID:sn8s4H5G0.net] たしかにLLMはインデント苦手なんだよな
418 名前:デフォルトの名無しさん mailto:sage [2024/12/09(月) 19:15:26.73 ID:ktJRf3El0.net] b = b'\x00' with open('out.bin', 'wb') as f: print(b, file=f) TypeError: a bytes-like object is required, not 'str' なんで駄目なんだろう
419 名前:デフォルトの名無しさん [2024/12/09(月) 20:37:30.69 ID:9JwnAf8xd.net] write
420 名前:デフォルトの名無しさん mailto:sage [2024/12/09(月) 20:40:31.86 ID:gu5LX463H.net] >>410 そりゃあなた、print()は文字を表示する関数ですから 文字に変換できないオブジェクトを渡すとそうなります 普通にf.write(b)じゃダメなの?
421 名前:デフォルトの名無しさん mailto:sage [2024/12/09(月) 20:48:18.70 ID:ktJRf3El0.net] "b'\x00'" という文字列に変換してwbする挙動になるのか textはwrite使わずにprintの方がいろいろ便利だけど、 bytesで便利なことはなさそうだから、普通にwriteだな
422 名前:デフォルトの名無しさん [2024/12/10(火) 00:27:38.32 ID:YQiWPJG/0.net] AIに聞けば、おしえてくれる。聞くまでもないんだけど このエラーは、print関数を使ってbytesオブジェクトをファイルに書き込もうとしたために発生しています。 print関数は文字列を出力するために設計されていますが、bytesオブジェクトを扱う場合には文字列ではなくバイト列として処理する必要があります。 ファイルにbytesオブジェクトを直接書き込むためには、 file.write()メソッドを使用する必要があります。
423 名前:デフォルトの名無しさん mailto:sage [2024/12/10(火) 00:32:59.18 ID:dYoxCOIq0.net] このへんもperl脳なんだよな openする時にテキストかバイナリか指定して、 出力はなんでもprint 暗黙で変換が入るとかしない
424 名前:410 ではない (ワッチョイ 872a-hkg+) [2024/12/10(火) 09:50:53.98 ID:6plb36uZ0.net] a bytes-like object is required, not 'str' 'str' ではなく、bytes-like オブジェクトが必要 ってエラー文がおかしくないか。>>412 や AI の説明は bytes-like オブジェクトではなく、'str' が必要 と読める。
425 名前:デフォルトの名無しさん (ワッチョイ 7f32-swFN) mailto:sage [2024/12/10(火) 10:10:38.83 ID:ucbgABp/0.net] いや、その訳の方がおかしいだろ。
426 名前:デフォルトの名無しさん mailto:sage [2024/12/10(火) 10:34:29.33 ID:/OZpuXS/0.net] pythonで数式処理システム丸ごとパクリました rustもいるのでモジュールはこっちでできます というのはpythonの幸運だったんだろうな
427 名前:416 [2024/12/10(火) 10:53:36.34 ID:6plb36uZ0.net] >>417 そうなの? オレは他の訳を思い付かないのだけど、正しくはどう訳されるべきなの?
428 名前:デフォルトの名無しさん mailto:sage [2024/12/10(火) 11:00:10.65 ID:ucbgABp/0.net] >>419 スマン。おかしいのは訳でなくて解釈のほう。
429 名前:419 [2024/12/10(火) 11:45:56.57 ID:6plb36uZ0.net] >>420 正しくはどう解釈されるべきなの?
430 名前:デフォルトの名無しさん mailto:sage [2024/12/10(火) 20:50:32.76 ID:wrcvbyOIH.net] >>419 その解釈で合ってる 「バイナリ書き込みモードでopenされたファイルなんだからバイナリデータを寄越せ。printじゃstr型データしか来ねえから却下」とPythonは言いたいのだと思う
431 名前:デフォルトの名無しさん mailto:sage [2024/12/11(水) 00:37:18.02 ID:82tZrBQM0.net] perl脳の方が合ってると思うけどな 個人的には
432 名前:デフォルトの名無しさん [2024/12/11(水) 01:27:21.96 ID:bYjfV/I80.net] >>416 センスの悪いエラーメッセージでも、あとからエラーメッセージを変更すると混乱が生じる。 バイナリーデータをbytes-like objectと呼んだり、テキストデータをstrと呼んだりしているのは、Pythonそのものの言葉のセンスが悪いだけ。
433 名前:デフォルトの名無しさん [2024/12/11(水) 07:23:25.72 ID:uq+uLBFl0.net] bytes-likeもstrも妥当でしょ bytes型やbytearray型などバイト列を意味するもの全般を渡すことができるんだし 実際に渡されたもの (str型) については具体的な型名が分かるんだから、これを「テキスト」のような抽象的な表現にする必要もない それとエラーメッセージについては過去との互換性は重視されない 言語のバージョンアップの際に、より分かりやすいものになるよう変更されることがある これは他の言語あるいはライブラリでもそうじゃないかと思う
434 名前:デフォルトの名無しさん (スププ Sdff-Dl9P) [2024/12/11(水) 12:05:40.54 ID:m05bfKTqd.net]
435 名前:target="_blank">>>416 君はprintの方にしか目が行ってないからそうなる bytesを要求してるのはfだ 誤ってprintを使っちゃってるからfにstrがわたってる >>415 の言う暗黙の変換なんてどこにもない むしろ暗黙の変換が酷いのはperlの方だ [] [ここ壊れてます]
436 名前:デフォルトの名無しさん [2024/12/11(水) 14:49:10.23 ID:A39AeE7U0.net] 自動変換にするかバイナリ1本化でいいとおもうのだが 実装はしらないが 文字列型といっても中身はバイナリで追加でエンコード型が付与されてるだけだろ プログラムする側が何コードか把握してるか判別機があればすべてバイナリで問題はない
437 名前:デフォルトの名無しさん mailto:sage [2024/12/11(水) 18:36:44.78 ID:z4Opkr7B0.net] >>426 暗黙の変換はされてる print関数のリファレンスに書いてある通り バイナリモードのファイルオブジェクトはprint関数のfile引数として使えないという制約があるにも関わらずそれをprint関数独自ではチェックせずファイルオブジェクト側でチェックしてるから不親切なエラーメッセージしか出せない 多少改善はされたけどPythonのエラーメッセージの品質は所詮こんなものだからプルリクするのでなければ諦めれ
438 名前:デフォルトの名無しさん (ワッチョイ a7f0-jQuo) mailto:sage [2024/12/11(水) 18:58:38.06 ID:qJKCX3/k0.net] pythonのこの辺りの処理はゴミ python2との互換性を壊してまでいたのがこれ?って感じ
439 名前:デフォルトの名無しさん mailto:sage [2024/12/11(水) 22:06:14.26 ID:svJ0GfXp0.net] 大体わかっとけばあとは生成AIに任せておけば楽勝だからお前らみたいに細かい勉強してないわ
440 名前:デフォルトの名無しさん mailto:sage [2024/12/11(水) 23:19:16.57 ID:8u2IhVZ40.net] むしろこういう細かい部分こそAIが苦手で人間が理解しておくべきこと
441 名前:デフォルトの名無しさん (ワッチョイ 4781-N88W) [2024/12/12(木) 00:19:29.59 ID:Vyvzpldr0.net] プログラミングガチ初心者なんですけどpython勉強するのに良いサイトとかってありますか? 出来れば無料で使える奴が良いです^^;
442 名前:デフォルトの名無しさん (ワッチョイ 2762-RQnm) mailto:sage [2024/12/12(木) 00:22:35.11 ID:ztk/OuLW0.net] つ colab
443 名前:デフォルトの名無しさん (ワッチョイ df02-xJXv) mailto:sage [2024/12/12(木) 00:25:55.25 ID:AgOU+GVp0.net] >>432 kaggleかな
444 名前:デフォルトの名無しさん (ワッチョイ 47e7-N88W) [2024/12/12(木) 05:15:27.83 ID:Vyvzpldr0.net] >>434 >>433 thx
445 名前:デフォルトの名無しさん [2024/12/12(木) 12:07:07.57 ID:f9Vwr+H/0.net] これバグだろ いまだ治ってないのか デストラクタで最後にファイル書き込みしようしたらopenが無いみたいな例外出て この記事のようにimport atexitでできたが Python: グローバルスコープにあるオブジェクトの __del__() でインポートしたときの挙動について グローバルスコープにあるオブジェクトの __del__() で別のモジュールをインポートしてるとき、そのオブジェクトがプロセス終了時に破棄されると場合によっては例外になる。 ただし、これは Python の仕様かというとかなり微妙で CPython の 3.x 系でしか同じ問題は観測できていない。
446 名前:デフォルトの名無しさん mailto:sage [2024/12/12(木) 19:02:13.23 ID:EW+16OEH0.net] >>432 赤ちゃん向け https://www.python.jp/train/index.html 幼稚園児向け https://utokyo-ipp.github.io/ どっちかやれば後はやりたいことに合わせて学べ
447 名前:デフォルトの名無しさん mailto:sage [2024/12/12(木) 19:43:45.42 ID:fFGTBp7j0.net] https://i.imgur.com/IqiyOaS.png カオス
448 名前:デフォルトの名無しさん [2024/12/12(木) 20:08:40.63 ID:xVVXHqvg0.net] >>437 Google Colab とかノートブックとか初っ端から謎ワードの連続で無理...
449 名前:デフォルトの名無しさん (ワッチョイ 474b-Ahcx) [2024/12/12(木) 22:42:21.01 ID:m/Fq7DtI0.net] Colabでなく自分のPCにPythonの実行環境を入れるても良いと思う 公式のWebページから自分のPCに合ったもの (例えばWindowsならWindows用のインストーラー) をダウンロードして実行する Pythonは実行環境が必要で、例えばPythonのプログラムを書いたとしても、それを読み取って命令を実行するものが無いと何もできない それが実行環境 例えば「PythonがインストールされているPC」のような言い回しをした場合はこれを指す Colabはざっくり言えば「Web上でPythonコードを書いて、Web上で結果を確認する」もので、PythonをインストールしてないPCでもPythonを体験できるというもの ただしGoogleでのアカウント登録などの手間は要る Colab自体の説明もそのページにあるし、それに従っても良いけど、自分のPCで動かしても良い 自PCで動かす場合は、プログラムを書くための道具 (エディタ) として VS Code をインストールするのをおすすめする プログラムの書き方とかはColabでも自分のPCで実行するのでも変わらないので、「Colabを使わないとこのガイドは役に立たない」ということはないはず
450 名前:デフォルトの名無しさん mailto:sage [2024/12/12(木) 22:45:32.70 ID:fFGTBp7j0.net] よく知らん世界で変数に値が代入されてもどうでもいいからな 眼の前の細かい問題が解決されないことには何の役にも立たない
451 名前:デフォルトの名無しさん [2024/12/13(金) 02:02:43.13 ID:HOcX/CPId.net] 馬鹿には無理 これが真実
452 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 06:04:06.54 ID:J/ura0hhH.net] >>442 ところがどっこい AIの登場で馬鹿でもコードが書ける世の中になりました むしろITエンジニアは仕様をAIに的確に指示する国語力が問われます
453 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 08:13:08.30 ID:PGPdXgeN0.net] 過去に誰かが書いたことのあるコードを真似できるだけなんだけどな どうせ似たようなことばっかりしてるだけだから、それで足りてしまう訳だけど
454 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 08:36:10.48 ID:afuAO8aY0.net] Googleの2024年の新規コードの1/4はAIによるもの これからますます増えるだろうな
455 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 08:51:50.46 ID:J/ura0hhH.net] >>444 それでいいのよ 俺ら凡人がPythonで書きたいコードなんて、誰かしら先人が既に書いている それを検索してコピペして手直しする作業をAIがやってくれるんだ
456 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 08:52:14.17 ID:PGPdXgeN0.net] プログラミングは必須の知識だとして小学校で教え始めても、 ソロバンを教えてるのと同じようなことにならないか
457 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 11:08:31.34 ID:p0EgxGbh0.net] >>446 企業のコードもそうだよな 結局
458 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 11:09:06.66 ID:p0EgxGbh0.net] >>443 あれ国語でもないと思うぞ 別物
459 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 11:13:37.67 ID:cFM+ofEq0.net] AIみたいに考えるスキルだろうね
460 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 11:41:56.11 ID:PGPdXgeN0.net] そんなもんが要るのは黎明期の一瞬だけ
461 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 12:53:49.98 ID:afuAO8aY0.net] cursorは使いこなせるようにならないとな
462 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 13:17:44.88 ID:p0EgxGbh0.net] でもpython使うなら 新しいアルゴリズムを開発したいところ 俺も量子計算頑張る
463 名前:デフォルトの名無しさん [2024/12/13(金) 13:22:17.08 ID:DEcGtboS0.net] >>447 > ソロバンを教えてるの とは何。寓意が分からない。
464 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 14:10:25.85 ID:cFM+ofEq0.net] >>454 計算機があるのに、ということやろ
465 名前:デフォルトの名無しさん [2024/12/13(金) 14:40:11.81 ID:L2Jn8AUB0.net] >>455 ひとへに風の前の塵に同じ。 ひとへに計算機の前のソロバンに同じ。 ひとへに何の前のプログラミングに同じなの?
466 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 15:23:16.37 ID:iO77Ft520.net] 算盤がちゃんとできる人は暗算も得意だから無駄ではないだろ
467 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 15:55:46.77 ID:S3vfDw/Zd.net] 比喩が変だとどんどん話がおかしくなっていく
468 名前:デフォルトの名無しさん mailto:sage [2024/12/13(金) 16:01:13.73 ID:owGJr6UZ0.net] 小学生にはプログラミングよりむしろソロバン教えたほうがいいだろうな
469 名前:デフォルトの名無しさん [2024/12/13(金) 16:55:13.59 ID:L2Jn8AUB0.net] >>447 プログラミングは必須の知識だとして小学校で教え始めても、句読点を教えられても打てないお前らと同じようなことになるの?
470 名前:デフォルトの名無しさん [2024/12/13(金) 17:29:42.67 ID:LAtQrsJV0.net] サイコパスの脳の違いを発見。一般の人に比べ線条体が大きいことが判明 karapaia.com/archives/52313287.html
471 名前:デフォルトの名無しさん [2024/12/13(金) 17:50:30.57 ID:Uo55RvL40.net] >>443 馬鹿は何をどうすれば良いかすらわからんから無理
472 名前:デフォルトの名無しさん (ワッチョイ ffdc-02MV) mailto:sage [2024/12/13(金) 18:46:30.02 ID:afuAO8aY0.net] それすらAIが出してくれる
473 名前:デフォルトの名無しさん [2024/12/14(土) 00:32:10.18 ID:+/8ziscy0.net] AIに結果だけでなく 云々って やり取りしてたら それが大事なことですって返されたw
474 名前:デフォルトの名無しさん mailto:sage [2024/12/14(土) 03:24:41.72 ID:pcjhhzVc0.net] 現状は頭の悪い人が使いこなせるものではない コードを生成する以上は当然何かしらの結果を求めるわけでそれが正しいかどうかはAIにもわからない その関数が正しく動いても仕様を正しく満たしているとは限らないのだから
475 名前:デフォルトの名無しさん [2024/12/14(土) 03:37:00.65 ID:SXm2TFHi0.net] >>465 >>463 みたいな何が正しいかわからない馬鹿にはありがたがられている
476 名前:デフォルトの名無しさん (ワッチョイ c754-9uuH) mailto:sage [2024/12/14(土) 07:07:26.39 ID:o7zY5DjZ0.net] 自動翻訳と似たようなもんで 書けないけど読める程度の能力は無いと、合ってるのか全然判らん コードならテストも一緒に生成させて、保証済みにすることはできるけど、 今度はテストが正しいのかどうかが判らん
477 名前:デフォルトの名無しさん mailto:sage [2024/12/14(土) 08:28:56.06 ID:9RGS76CaH.net] 自分で書ける人が楽するために使うのが効率いいね 書いてもらったコードに容赦なく突っ込みを入れて謝らせるのが快感 AIは人間と違っていくらダメ出ししてもへこたれたりコンプラ窓口に通報したりしないからな
478 名前:デフォルトの名無しさん [2024/12/14(土) 09:51:34.26 ID:vNvVxWyEa.net] >>460 日本語には本来句読点は存在しないと教わらなかったのかおまえ
479 名前:デフォルトの名無しさん mailto:sage [2024/12/14(土) 09:55:50.05 ID:wREWJB/g0.net] >>469 何いってんだこいつ
480 名前:デフォルトの名無しさん [2024/12/14(土) 10:30:09.42 ID:MlLEwa0c0.net] >>469 どこまで進歩を否定できるかね。 ・プログラム言語にPythonは存在しなかったと教わったので、アセンブリで記述する。 ・ソフトウェアは存在しなかったと教わったので、ハードウェアで実現する。 ・火を使わなかったと教わったので、生肉食って凍死する。
481 名前:デフォルトの名無しさん mailto:sage [2024/12/15(日) 00:12:19.08 ID:cAhZdgHB0.net] CPythonってコードの処理部分にエラーメッセージ個別に直書きしてるよね えぇんかこんな作りで
482 名前:デフォルトの名無しさん [2024/12/15(日) 11:36:58.09 ID:kWIS2Vi/0.net] ライブラリなんかは大多数がそうやろ Python以外の言語を含めても UIのラベルとか、多言語対応が必要とか、そういうものでなければエラーメッセージは直書きでも基本的に問題ない どこかでメッセージ一覧を定義して、それを各所から参考して……ってコードサイズが不必要に膨らむだけ 条件の直下のメッセージは確認しやすいけど、参照だとその先に飛ばないと内容を確認できないし、エラー理由とメッセージが合ってないなどの問題に気付きにくくなる
483 名前:デフォルトの名無しさん [2024/12/15(日) 11:43:59.49 ID:kWIS2Vi/0.net] 同じソースファイルやモジュール内でならダブりを減らすために参照する、ということはあるけどね その辺はある程度柔軟にして良いと思う
484 名前:デフォルトの名無しさん (ワッチョイ 4a67-MuSW) mailto:sage [2024/12/15(日) 13:39:42.12 ID:2ocAHxOm0.net] プログラムの理解は必要だけど 生成AI活用したらめちゃくちゃ生産性あがるね いい時代だ
485 名前:デフォルトの名無しさん mailto:sage [2024/12/15(日) 14:27:49.00 ID:1H80RXIX0.net] 細かいif文の条件設定とかまだ間違えて出してくるけど大枠の処理の流れとかは俺より速く賢いの出してくる
486 名前:デフォルトの名無しさん mailto:sage [2024/12/15(日) 14:42:09.12 ID:qMlmNzBuH.net] とりあえず大雑把でも動くものをサッと出してくれるのが本当に助かる あとはテストしながら煮詰めて行けばいい 自分で一から書くと調べものだけで一日潰したりとかザラだからな
487 名前:デフォルトの名無しさん mailto:sage [2024/12/15(日) 14:45:31.08 ID:UyD9zs/g0.net] 「コードを生成する」レベルだと俺たちの生産性が上がる程度のことなんだよな もっと大きな視点で生成AIを語らなきゃ 「サービスを作る」 とか 「アプリを作る」 という時点で見ると今の生成AIはまだまだ物足りないね 進化の余地はまだまだある
488 名前:デフォルトの名無しさん mailto:sage [2024/12/15(日) 14:47:13.51 ID:2ocAHxOm0.net] プログラムとデータベースとサーバーのスキルがあれば 大抵のものは一人で作れるね これからの時代、発信力とアイデアで勝負ですね
489 名前:デフォルトの名無しさん mailto:sage [2024/12/15(日) 15:04:49.94 ID:sTMTjc6t0.net] データベースとサーバーに関するものしか作れない webアプリが作りたいならwebの知識が要るし、 ハード制御したいならハードの知識がいる
490 名前:デフォルトの名無しさん mailto:sage [2024/12/15(日) 16:20:28.80 ID:A5eyIB7V0.net] よそでやってるサービスを丸ごとパクってくるのがコンサルの仕事だったがこれがなくなったな 新しいものは誰にとっても大変 美術界芸術界デザイナーと同じことやな パクリが偉そうにして必死で周りから盗んでる
491 名前:デフォルトの名無しさん mailto:sage [2024/12/16(月) 09:24:58.90 ID:EgTWSdxB0.net] re.searchがコンパイルしても速度でperlに負けるなあ
492 名前:デフォルトの名無しさん mailto:sage [2024/12/20(金) 08:34:56.68 ID:6q6MnR150.net] pypyってずっと「ぴぴー」だと思ってた ぱいぱいなのね、エロい
493 名前:デフォルトの名無しさん [2024/12/20(金) 15:29:58.94 ID:raronLtC0.net] JAIST、「並行量子通信プロトコル」の完全な自動形式検証を実現 news.mynavi.jp/techplus/article/20241220-3090485/
494 名前:デフォルトの名無しさん [2024/12/21(土) 10:55:16.63 ID:bIHzWCsda.net] 会員登録しないと読めないようなサイト貼るなよ
495 名前:デフォルトの名無しさん mailto:sage [2024/12/21(土) 12:25:00.73 ID:pwsLuBo50.net] そいついつもクソみたいな記事貼るからmynaviでNG登録しとくといいぞ
496 名前:デフォルトの名無しさん mailto:sage [2024/12/21(土) 12:36:49.56 ID:1IkBy+Fi0.net] そこは別にいいんちゃう
497 名前:デフォルトの名無しさん mailto:sage [2024/12/22(日) 05:10:00.65 ID:mtwx2rsP0.net] >>487 ?
498 名前:デフォルトの名無しさん mailto:sage [2024/12/22(日) 09:51:07.98 ID:q6RAF36e0.net] マイナビ登録してみたけど、いろいろ作りの甘いサイトだな ログインしないつもりだったのにログインしている ログアウトが見つからない サイトから移動しますかの確認がいちいち出る 必要条件が満たされないとボタンが押せない仕組みになっていない ユーザーのアイコンに1の表示が出っぱなしで何のことか判らない あまりIT技術に詳しくない人が作ってる
499 名前:デフォルトの名無しさん mailto:sage [2024/12/22(日) 11:10:04.97 ID:xPymu+XWM.net] 個人情報お漏らししてるし IT関連の会社ではないだろ
500 名前:デフォルトの名無しさん [2024/12/22(日) 12:07:50.65 ID:gGsgW1AHa.net] >>489 まるでQiitaやFacebookやXだな
501 名前:デフォルトの名無しさん mailto:sage [2024/12/22(日) 12:26:42.74 ID:q6RAF36e0.net] やっとログアウト方法見つけた 再ログインすると、ページが見つかりませんと表示される 会員アイコンをクリックするとマイページの階層に飛ぶのが本来の筈なのに、 その下の登録情報変更に飛んでそこから戻れない
502 名前:デフォルトの名無しさん [2024/12/22(日) 12:35:12.03 ID:gGsgW1AHa.net] ただのバグ報告はスレチ
503 名前:デフォルトの名無しさん mailto:sage [2024/12/28(土) 10:13:29.12 ID:3GhbGw0k0.net] PythonというよりはQtの話かもしれんないけど、PySide6を使ってるのでこちらで質問 ウィンドウ内にあるウィジェットの枠をドラッグで調整したいときの方法が分からないです ↓の動画のような動きをしたい https://streamable.com/k87ct0 動画はエクスプローラーの例で、左がツリービュー、右がリストビューで、その間をドラッグでサイズ調整したいんです Windowsアプリではよくあると思うんですが、この機能の名称が分からず検索しても見つけられなかった 参考になるサイトやサンプルがあると助かるのですが、どなたかご存じの人がいたら教えてくださいm(_ _)m
504 名前:デフォルトの名無しさん [2024/12/28(土) 15:14:32.69 ID:+wr15D9A0.net] QSplitter を使う AIに聞くにはこんな感じで 'PySide6 一つのフォームに 2つのwindow領域を作る例 左右の並びで 領域はサイズ調整可能'
505 名前:デフォルトの名無しさん mailto:sage [2024/12/28(土) 20:36:02.31 ID:3GhbGw0k0.net] >>495 サンクス! Qt Designerでそれらしいコンテナが見つからず、slideとかで検索してもQSliderとか出てくるし、困ってた Qt Designerでスプリッターを使うには、ウィジェットを選択して右クリックからなのね これでGUIアプリの作成にチャレンジできますわ AIも参考になりました
506 名前:デフォルトの名無しさん [2025/01/01(水) 22:16:25.37 ID:1GuC2YKw0.net] pipとかpoetryからpyPI繋がんねーな
507 名前:デフォルトの名無しさん mailto:sage [2025/01/04(土) 00:22:28.05 ID:72xSf60h0.net] 字幕表示してて、長さが画面幅を超えたら改行したい プロポーショナルフォントで全角半角入り混じった表示幅なんか、 どうやったら取得できるだろう
508 名前:デフォルトの名無しさん [2025/01/04(土) 01:01:54.24 ID:PFHZ5xFT0.net] True Typeフォントの使う文字の座標系を引っ張りだしてきて その最小と最大の座標を取得して、フォントサイズのポイント相当のドット幅を計算する 使うすべての文字を1文字ずつ計算 って やればできるが現実的でない...よね 単純に 12ポイントが16x16ドットで計算するとか
509 名前:デフォルトの名無しさん mailto:sage [2025/01/04(土) 01:21:50.54 ID:M4FF0WkE0.net] カーニングとか考えないならそうなんだろうな
510 名前:デフォルトの名無しさん (アウアウエー Sa52-fscC) [2025/01/04(土) 10:12:43.18 ID:9AJmtK0Pa.net] >>498 Windowsなら表示される文字列全体の表示幅を還すAPIがあるのでそれを使う pythonだけで適当にやるなら実際に描画する前に表示されないメモリDCに先に描画して 背景と比較してどこまで描画されたかを調べて表示幅を取得すれば良いんじゃね
511 名前:デフォルトの名無しさん [2025/01/12(日) 00:27:05.77 ID:dTcIHoiJd.net] 角括弧[T]構文とかなんか汚ねえな ジェネリックだのアノテーション方面から汚れてきてるな すでにPerlより汚いのでは 前方参照とか__init__()だの
512 名前:デフォルトの名無しさん mailto:sage [2025/01/12(日) 20:36:54.45 ID:jie/PZI00.net] 内包表記の書き方は覚えてても、内包表記という名称をいつも忘れる
513 名前:デフォルトの名無しさん [2025/01/13(月) 13:34:17.99 ID:g4/CTboDa.net] うbyよりはマシだよ
514 名前:デフォルトの名無しさん mailto:sage [2025/01/13(月) 18:30:48.03 ID:yjxCA/ti0.net] comprehensionの、もっと良い訳はなかったのか
515 名前:デフォルトの名無しさん mailto:sage [2025/01/13(月) 18:40:00.54 ID:2a7ZU6nP0.net] python初めて触れたけど、インデントが判断、ループブロックの意味を持つってクソすぎだろw やっぱ、レス見ると同じ様に思ってる奴多いな。 どうしてこうなったw
516 名前:デフォルトの名無しさん mailto:sage [2025/01/13(月) 20:43:50.82 ID:0Vj63HhM0.net] インデント自体はクソだけど平易に書くように働く点で有能 そういう要素が多い lambdaもそうでdefで書くようになる
517 名前:デフォルトの名無しさん mailto:sage [2025/01/13(月) 21:00:08.60 ID:S0OuVEz70.net] 行内ではフリーフォーマットだけど、行頭のインデントだけは厳密 という態度豹変に面食らうんだよな まあ、インデント間違ってても許される言語の方が実害多い
518 名前:デフォルトの名無しさん [2025/01/14(火) 08:11:01.41 ID:SrCf5X7D0.net] >>508 > 行内ではフリーフォーマット がよく分からない。
519 名前:デフォルトの名無しさん mailto:sage [2025/01/14(火) 08:32:04.72 ID:KhgfrG4BM.net] カラム位置まで指定されている RPGとかを想定しているんじゃね? しらんけど
520 名前:デフォルトの名無しさん [2025/01/14(火) 14:34:05.45 ID:i6PsXw8T0.net] Pythonでスクレイピングの質問よろしいでしょうか。 IPローテーションでインスタライブの情報を取得したいと考えています。 かつて、PythonでInstagramの非公開APIに繰り返しアクセスし、インスタライブの配信情報を取得していましたが、IPブロックのせいか前述の方法でアクセスできなくなりました。 bright dataのような有料サービスを利用し、IPローテーションでアクセスを試みたいのですが、Instagram関連のAPIに有効でしょうか。 お試しされた方がいらっしゃたら、コメントいただけると幸いです。
521 名前:デフォルトの名無しさん mailto:sage [2025/01/14(火) 15:00:45.78 ID:pTMFifAu0.net] アクセス制限されたなら使うべきじゃないんでは 大陸人の思想だな
522 名前:デフォルトの名無しさん mailto:sage [2025/01/14(火) 15:52:41.71 ID:49OmJo2t0.net] 別に大陸とか関係なくクズはクズよ 最低賃金の仕事してからそう思うようになったわ 話がそれたけどブロックされてるならただのクラッキングだから辞めとけってのが答え
523 名前:デフォルトの名無しさん mailto:sage [2025/01/14(火) 15:53:47.83 ID:49OmJo2t0.net] クラッキングだから辞めとけ
524 名前:デフォルトの名無しさん (ワッチョイ 4acb-U3nF) mailto:sage [2025/01/14(火) 19:43:05.09 ID:VlX9UfuO0.net] 堂々と違法行為の相談するとかおそろしい
525 名前:デフォルトの名無しさん (ワッチョイ f954-A89Y) mailto:sage [2025/01/14(火) 19:50:11.75 ID:6TReUIVg0.net] IPローテーションが有効かどうかはpython関係ないしな
526 名前:デフォルトの名無しさん (スップ Sdca-Qywu) [2025/01/14(火) 20:04:54.54 ID:4a6i7DXld.net] 今後はblackみたいな完全に機械的なフォーマットに従って書くようになっていくんだろ ぱいちょんって
527 名前:デフォルトの名無しさん (ワッチョイ a993-1EqR) mailto:sage [2025/01/16(木) 08:53:44.52 ID:vHBJCVRy0.net] とはいえ皆カスタムするから結局バラバラなフォーマットになる デフォルトの1行88文字制限とかアホすぎるし
528 名前:デフォルトの名無しさん mailto:sage [2025/01/17(金) 10:42:50.01 ID:w4z8H3gJ0.net] 今更だが、本屋のコンピュータ関連書籍のトコ、 Python入門書が狂い咲きだね。 敷居が低くなるのは良い事だけど。
529 名前:デフォルトの名無しさん (ワッチョイ 862a-Zdzc) [2025/01/17(金) 10:53:59.70 ID:eoeaxZuy0.net] >>519 君も著作したまえ。内容なんてどれもチュートリアル丸写しだ。
530 名前:デフォルトの名無しさん (ワッチョイ f954-A89Y) mailto:sage [2025/01/17(金) 11:09:19.33 ID:lUhfcPef0.net] リスト内包表記は数学の集合の内包的表記から来ている 内包的表記は外延的表記と対になる概念で、要素を列挙するか、要素の特徴で表すかの違い 内包的表記は定義域と命題関数から構成される {x∈R | 2x} こう書くと定義域がRで、命題関数が2x Rに含まれるxに対して、2xで評価されるもので構成される集合 同じことをリスト内包表記で書くと、 [2*x for x in R] になる 定義域と命題関数の順序が逆なのは、'for' というキーワードの意味と合わせる為だろう
531 名前:デフォルトの名無しさん mailto:sage [2025/01/17(金) 11:41:18.37 ID:lUhfcPef0.net] 仮に数学と同じ順序で書くと [x in R | 2*x] [x in R such that 2*x] [x in R s.t. 2*x] こんな感じになっていただろう 言語仕様として微妙なので却下したけれど、 such that抜きでいきなり命題関数が現れるので、読んでも意味が判らなくなった
532 名前:デフォルトの名無しさん mailto:sage [2025/01/17(金) 14:52:11.51 ID:lUhfcPef0.net] 2*xといきなり書く時点でxは初登場なので、普通に考えるとNameErrorになる 後で出てくるx in Rのxだよと言われても、そこだけ文法が歪んでいる for x in R に対して 2*xのリストを作る、という順序で読めた方が明らかに判りやすい
533 名前:デフォルトの名無しさん mailto:sage [2025/01/17(金) 16:46:49.13 ID:Ik5FlFRf0.net] 間違い。命題関数ってのは平たく言えば条件のことで、Pythonの内包表記のif節に相当する。 例えば [2*x for x in R if x < 5] は数学の内包表記では {2*x | x ∈ R, x < 5} と表記する。同じだろ?
534 名前:デフォルトの名無しさん mailto:sage [2025/01/18(土) 08:37:19.38 ID:naGWW37A0.net] seleniumはパスワードとかcookieを保存するとかより、 profileそのものを保持した方が無敵だったけど、 何かの拍子にprofile無効になっちゃうな
535 名前:デフォルトの名無しさん mailto:sage [2025/01/18(土) 10:43:38.07 ID:0UqLKpkd0.net] いまさら selenium
536 名前:デフォルトの名無しさん [2025/01/18(土) 16:09:23.54 ID:wtp0JU6d0.net] 英文テキストを入力として,ロンゲストマッチ,というか,最長の部分列を探すプログラムを書きたいのだが,CだとPrograming Pearlsのコラム15にあるのでいいのだが,そのままだとpythonに乗らないし,何かいい方法はないかなあ.
537 名前:デフォルトの名無しさん mailto:sage [2025/01/18(土) 16:19:53.66 ID:FL3+FJ2v0.net] いうほどいまさらか? なんかいい代わりになるものある?
538 名前:デフォルトの名無しさん mailto:sage [2025/01/18(土) 16:30:43.24 ID:BqhOY8myM.net] >>527 それそのまんまAIに聞けばいいよ 手元でGemini 2.0 Experimental Advancedに聞いてみたら見事な回答をくれたぞ
539 名前:デフォルトの名無しさん mailto:sage [2025/01/18(土) 16:38:42.51 ID:8uvwUc2N0.net] 課金できないんだろ 察してやれ
540 名前:デフォルトの名無しさん mailto:sage [2025/01/18(土) 17:32:09.61 ID:vWHjWIZo0.net] >>528 Playwright とか?
541 名前:デフォルトの名無しさん (ワッチョイ fef0-gVZi) mailto:sage [2025/01/18(土) 19:20:33.75 ID:FL3+FJ2v0.net] >>531 良さそうだな 試してみるわ
542 名前:デフォルトの名無しさん (ワッチョイ 43ad-4fJb) [2025/01/19(日) 00:35:41.94 ID:WuaBvw6S0.net] 文字列なんて、正規表現を使えば、最長一致・最短一致なんて簡単にできるのでは?
543 名前:デフォルトの名無しさん (ワッチョイ f354-Be6J) mailto:sage [2025/01/19(日) 00:58:15.54 ID:GNlIXdkj0.net] 単純に文字列を探すなら最長も何もない訳で 最長と言ってる時点で正規表現のワイルドカードが前提なのでは
544 名前:デフォルトの名無しさん (ワッチョイ 33b1-dt5S) mailto:sage [2025/01/19(日) 01:07:38.45 ID:aE0XKMyP0.net] 2つの文字列に共通する最長の部分文字列を探すやつでしょ
545 名前:デフォルトの名無しさん (ワッチョイ 5301-IoNS) mailto:sage [2025/01/19(日) 01:20:41.36 ID:npat2aPV0.net] find the longest duplicated substringってやつでしょ Programming Pearlsの一番簡単な例でいくと“Ask not what your country can do for you, but what you can do for your country”という文字列なら”can do for you”が答え
546 名前:デフォルトの名無しさん mailto:sage [2025/01/19(日) 18:08:17.85 ID:LhzIGXPA0.net] ここで質問するのとgeminiとかcopilotに質問すんのどっちが効率いいかな?
547 名前:デフォルトの名無しさん mailto:sage [2025/01/19(日) 18:20:45.02 ID:GNlIXdkj0.net] そもそも質問スレではない
548 名前:デフォルトの名無しさん [2025/01/19(日) 18:42:00.94 ID:QRrLEXGb0.net] お勉強スレで質問するなとは無理すぎ。
549 名前:デフォルトの名無しさん mailto:sage [2025/01/20(月) 01:08:32.20 ID:BsvendGF0.net] pyscriptって最近どうなの? js苦手だから当初は期待してたんだけど
550 名前:デフォルトの名無しさん (ベーイモ MMff-4FDL) mailto:sage [2025/01/20(月) 15:05:27.82 ID:7WH6y8fWM.net] 最近もクソも今も昔もこれからもオモチャであり実用するようなものではない js書きたくないならpythonで書いて翻訳してもらえばよい
551 名前:デフォルトの名無しさん mailto:sage [2025/01/20(月) 20:50:18.86 ID:uBkCdSeR0.net] その手のは大体アホが始めてやってるうちにアホらしくなって開発が止まる Jythonとかね
552 名前:デフォルトの名無しさん mailto:sage [2025/01/20(月) 21:03:17.22 ID:6bfYmu3O0.net] pythonで書くのは簡単に書きたいという要求があると思うけど、 簡単に書きたいと厳密に書きたいは相反するので、 大抵は徒花言語として散っていくんだよな pythonが意外と厳密な用途にも使えるのは、バランスが良かったのだろう
553 名前:デフォルトの名無しさん [2025/01/20(月) 22:50:09.23 ID:08Nyz7B30.net] 簡単に書けない言語って何?
554 名前:デフォルトの名無しさん mailto:sage [2025/01/20(月) 22:55:39.50 ID:6bfYmu3O0.net] C++
555 名前:デフォルトの名無しさん [2025/01/21(火) 08:23:31.58 ID:yRL5l1cZa.net] rubyっぽい文法が売りのナントカとscriptでjsにするのもあったな 名前も忘れちゃったよ
556 名前:デフォルトの名無しさん (アウアウウー Saa7-C2Lh) [2025/01/21(火) 08:25:23.93 ID:yRL5l1cZa.net] coffeescriptだ思い出した
557 名前:デフォルトの名無しさん mailto:sage [2025/01/21(火) 11:52:18.11 ID:gA/FmHct0.net] >>543 はえ~勉強になるぅ
558 名前:デフォルトの名無しさん [2025/01/21(火) 12:02:24.94 ID:ZMbV0RT+0.net] やりたいことがやりたいように出来るのはC++
559 名前:デフォルトの名無しさん [2025/01/22(水) 15:36:19.34 ID:3ss9Z0B7a.net] やりたいことがやりたいように出来るのはC
560 名前:デフォルトの名無しさん mailto:sage [2025/01/22(水) 16:41:12.84 ID:rqHpU9Ud0.net] C++に気に食わない機能や作法があっても 使わずに独自で書けばええんよ
561 名前:デフォルトの名無しさん [2025/01/23(木) 10:18:36.86 ID:MfXmmgFNa.net] C++の要らない機能を無理に使わず BetterThanCとしてCの範囲で使っておくのが正解
562 名前:デフォルトの名無しさん [2025/01/23(木) 17:36:52.16 ID:zJefYyzo0.net] 拷問現在の日本でもある https://nazology.kusuguru.co.jp/archives/168908
563 名前:デフォルトの名無しさん mailto:sage [2025/01/24(金) 20:46:41.96 ID:AnpieBwS0.net] forでリストを処理するときに そのリストから値をremoveすると次の値が飛ばされる その対策として for i in tuple(リスト名): としてタプルに変換して問題解決はしているのだけど 王道的な別な解決策ってある?
564 名前:デフォルトの名無しさん mailto:sage [2025/01/24(金) 21:01:24.34 ID:g+2OlWgu0.net] 別のコピーなら何でもいいんでしょ
565 名前:デフォルトの名無しさん mailto:sage [2025/01/24(金) 21:59:09.40 ID:oJDbtKku0.net] 王道は破壊的な処理をせずフィルタ動作にする 必要なら元の変数にアサインし直す
566 名前:デフォルトの名無しさん mailto:sage [2025/01/24(金) 22:02:58.75 ID:g+2OlWgu0.net] 文脈が判らんけど、リストを条件に合うように作り直すなら、 あるべきリストを別に生成して、完成したら元のリストを更新するかな
567 名前:デフォルトの名無しさん mailto:sage [2025/01/24(金) 22:24:39.69 ID:CNUIUSvw0.net] リスト内包表記でいいじゃん 関数型言語的に書いた方がいいよ forは使うところない
568 名前:デフォルトの名無しさん (ワッチョイ 5301-U9fZ) mailto:sage [2025/01/24(金) 22:42:35.20 ID:Js6GMDZG0.net] >>554 王道はin-placeで削除しようとせずにフィルターして削除済みの新しいリストを生成する (Pythonでフィルターするときはcomprehensionを使うのがデフォ) in-placeで削除したい時はリストの最後からインデックスで回して削除する ↓これはO(n)でいいところをO(n^2)で処理してるからNG for i in tuple(リスト名): if predicate(i): リスト名.remove(i)
569 名前:デフォルトの名無しさん (ワッチョイ cf10-3anD) mailto:sage [2025/01/24(金) 22:47:32.12 ID:rKtZO0PM0.net] 文が必要な場合には内包表記では書けないでしょ。
570 名前:デフォルトの名無しさん (アウアウウー Saa7-LZB9) [2025/01/24(金) 22:51:11.07 ID:CUf3ZumHa.net] 忌み数字を踏ませる業者、アプリ、コンピュータプログラムの嫌がらせ 動画
571 名前:ト生回数、表示回数、登録者数、フォロワー数、評価数、コメント数、レベル、経験値、ポイント、HP、通貨、価格、メッセージ数、通知数、フレンド数 4(死)、13(キリスト教における忌み数字) 18(嫌)、24(〜に死)、34(〜さん死) 40、42、44 56(殺)、64(無視) 71(無い)、74(無し)、79(無く、亡く) 84(〜は死)、94(〜君死)、96(黒) このような数字と名前や生年月日、IDなどを組み合わせて執拗に強調することで、精神攻撃をする業者やストーカー、嫌がらせ組織がキモい。 [] [ここ壊れてます]
572 名前:デフォルトの名無しさん (ワッチョイ 5301-U9fZ) mailto:sage [2025/01/24(金) 22:51:58.63 ID:Js6GMDZG0.net] 関数化するだけでしょ。
573 名前:デフォルトの名無しさん (ワッチョイ f354-Be6J) mailto:sage [2025/01/24(金) 22:53:05.01 ID:g+2OlWgu0.net] 王道がわらわら出てくるっていう
574 名前:デフォルトの名無しさん (ワッチョイ 6f9f-uL6f) mailto:sage [2025/01/24(金) 22:57:24.27 ID:oJDbtKku0.net] >>560 それよね 各操作を関数化したところで、短い=簡潔で分かりやすいとは限らない デメリットもあるけどコロンとインデントで見通しよく書けるのも強み
575 名前:デフォルトの名無しさん (ワッチョイ cf10-3anD) mailto:sage [2025/01/24(金) 22:59:26.00 ID:rKtZO0PM0.net] 内包表記は便利だけど、内包表記で書くためだけに関数を作るのは個人的にはちょっと嫌かな。そこはfor文と適宜使い分ければいいのでは。
576 名前:デフォルトの名無しさん mailto:sage [2025/01/24(金) 23:07:41.94 ID:g+2OlWgu0.net] わかりやすさの為なら何でもする 内包表記も関数化も抽象化でありわかりやすさ 説明変数もばんばん使うべき
577 名前:デフォルトの名無しさん (ワッチョイ e32d-YeI8) mailto:sage [2025/01/24(金) 23:44:28.59 ID:bnSBcaeW0.net] >>554 です 書き方が悪かったようですいません リストの値をフィルターしたいのではなく リストの値で処理した結果で削除が発生する処理をしています 実際は画像名のリストで画像判定をして その結果で様々な処理をしているのですが その処理の一つが削除というものです >>559 逆回しは思い付きませんでした 削除しても飛ばされず処理出来ますね
578 名前:デフォルトの名無しさん (ワッチョイ 5301-U9fZ) mailto:sage [2025/01/25(土) 00:01:16.03 ID:JgWImGBF0.net] >>567 >リストの値で処理した結果で削除が発生する処理をしています mapしてfilterしてるのと同じことでは?
579 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 00:28:58.11 ID:PCXbr1vN0.net] >>567 日本語が意味不明だからコード出せよ
580 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 00:33:36.06 ID:YBOPAb6b0.net] コード出せを悪口だと思ってるな お前の母ちゃんコード出せ
581 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 01:04:29.61 ID:ta403zjD0.net] 結果保存用に空リストを作って、そこに加工後の画像だか画像名だかをappendしていくみたいな原始的なやり方ではダメかな?
582 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 02:05:52.81 ID:PCXbr1vN0.net] なぜそこまで頑なにコードを出したくないのか理解不能
583 名前:デフォルトの名無しさん [2025/01/25(土) 15:55:30.71 ID:9QNSyzV2a.net] 逆回しは良くやるけど万能ではない
584 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 16:15:16.97 ID:kYeOXsrBM.net] そもそもオリジナルのリストの削除をバックワードに進めないとおかしくなるのは自明だろ なんで先頭から消す必要あるの?
585 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 16:22:51.45 ID:YBOPAb6b0.net] 表が巨大でコピーなんか作ってられないなら仕方なく対象そのものをいじるけど、 その場合は削除するだけでも大変なので、やっぱりいい方法ではない
586 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 17:05:22.09 ID:I/LFBEOt0.net] 逆回しにしたところでリストの場合は途中の要素を削除したらそれ以降の要素(のポインタ)をコピーして詰める必要があるから非効率なんだよね
587 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 17:19:09.28 ID:YBOPAb6b0.net] どう考えもバグりやすいし、大丈夫だと判っても他人や未来の自分は不安だし、 理解するのも時間かかるし、何もいいことがない 時間がかかったとしても、判りやすく堅牢な方法で書いて、 速度で困った時に初めてトリッキーな方法を検討する
588 名前:デフォルトの名無しさん mailto:sage [2025/01/25(土) 19:02:59.44 ID:ue9pmKTV0.net] for i in original_list[:]: some_process( i ) みたいな感じでやるんじゃなかったっけ。 特に問題がないケースなら、 res = [] for i in original_list: some_process( i ) と新しいリストを作ってsome_processの中で適宜res.appendする方が分かりやすいかなと思う。
589 名前:デフォルトの名無しさん mailto:sage [2025/01/26(日) 00:49:53.92 ID:tS9IC3AC0.net] ソースが巨大なら印だけつけてあとで一括削除
590 名前:デフォルトの名無しさん (ワッチョイ 8754-5CbQ) mailto:sage [2025/01/26(日) 08:01:06.06 ID:W6rEvGvT0.net] 対象を直接操作して一括で削除するアルゴリズムってどんなの
591 名前:デフォルトの名無しさん [2025/01/28(火) 10:16:11.80 ID:dqvH8r5Ca.net] 循環参照ありのRCGC
592 名前:デフォルトの名無しさん (ワッチョイ 0ec0-natb) mailto:sage [2025/01/28(火) 10:44:41.07 ID:jWrC9Jca0.net] それリストの話じゃなくなってるやん
593 名前:デフォルトの名無しさん mailto:sage [2025/01/28(火) 16:47:42.00 ID:GmSjCRuqd.net] 去年poetryでやってたけど uv圧倒的に速いな
594 名前:デフォルトの名無しさん mailto:sage [2025/01/30(木) 17:48:17.31 ID:VLQDVSyo0.net] 光る君への公式ホームページが31日で消去されるから保存したい シンプルだしwgetでいけるかと思ったら表示にjavascript使ってるから それのせいで保存できなかった 調べていくうちにpythonとヘッドレスブラウザを利用する方法があると知った しかし、プログラミングのプの字もさっぱりです。pythonも昨日インスコしたばっかり pythonとヘッドレスブラウザを利用した方法、解説されているようなサイトやヒントご存じでしたら教えてください
595 名前:デフォルトの名無しさん mailto:sage [2025/01/30(木) 18:08:53.47 ID:+zNA14SN0.net] まるっとローカルに保存してくれるツールを買え
596 名前:デフォルトの名無しさん mailto:sage [2025/01/30(木) 18:13:37.22 ID:x7iBFXJ9d.net] >>584 https://ja.m.wikipedia.org/wiki/波乗野郎
597 名前:デフォルトの名無しさん mailto:sage [2025/01/30(木) 18:14:18.23 ID:x7iBFXJ9d.net] >>584 PerMan Surfer 波乗野郎でごっそり保管 https://ja.m.wikipedia.org/wiki/波乗野郎
598 名前:デフォルトの名無しさん mailto:sage [2025/01/30(木) 18:27:40.22 ID:lxoi8Hgj0.net] HTTrackのProxyTrackつかうのがええんでは
599 名前:デフォルトの名無しさん mailto:sage [2025/01/30(木) 19:59:08.37 ID:rlxtAv1y0.net] 画像だけ全部落としたい、みたいな時も大抵は汎用ツールは使えなくて、 サイト毎に特化したのを作るな サイトまるごとだとさらに難易度が上がる リンク先は含めるのかみたいな判断付かない問題が出てくる 外部サイトは含めないとしたくても、ページの内容が複数のサイトで構成されてたりする
600 名前:デフォルトの名無しさん [2025/02/01(土) 12:23:22.67 ID:Dm0gVBeEa.net] imgタグもファイル名とかじゃなくてbase64で展開されてたりするよな
601 名前:デフォルトの名無しさん [2025/02/03(月) 09:45:21.23 ID:gwlnb/NB0.net] data1からdata2に変換したい。 data1=b'Z\x00V\x00-\x00E\x001\x000\x00\x00' data2="ZV-E10" data1はバイナリデーターで元はtcpのパケットの一部。 (英数+x00) (英数+x00) (英数+x00) ・・・・ というふうになってる。
602 名前:デフォルトの名無しさん mailto:sage [2025/02/03(月) 10:56:25.39 ID:CGp2zuw30.net] 変換したいのならすればいいじゃない
603 名前:デフォルトの名無しさん (ワッチョイ 3f3d-ZuVD) [2025/02/03(月) 12:03:25.53 ID:gwlnb/NB0.net] >>592 どうやって?
604 名前:デフォルトの名無しさん mailto:sage [2025/02/03(月) 12:46:11.42 ID:eVgE9/na0.net] https://docs.python.org/ja/3.13/library/stdtypes.html#bytes bytesはバイトのシーケンスだから好きにすればいいけど 一見UTF-16LEにもみえるから data2 = data1.decode('utf-16le', errors='ignore') でもいけそう
605 名前:デフォルトの名無しさん mailto:sage [2025/02/03(月) 12:46:55.10 ID:CGp2zuw30.net] えー 置換すりゃあいいじゃん 文字列短いかいならsplit/joinでもまあいい
606 名前:デフォルトの名無しさん mailto:sage [2025/02/03(月) 12:48:55.52 ID:CGp2zuw30.net] たよねー 俺もnull終端させたutf16-leだと思う ignoreせずにstripしてからdecodeかな
607 名前:デフォルトの名無しさん [2025/02/03(月) 14:44:29.24 ID:gwlnb/NB0.net] >>594 THXです。 できました。
608 名前:デフォルトの名無しさん mailto:sage [2025/02/03(月) 15:00:49.10 ID:eVgE9/na0.net] 596さんが書いてるけどignoreだと不正なシーケンスに弱いから 末尾0か確認してスライス[:-1]で削るのが手堅いよ 安価なかったので心配
609 名前:デフォルトの名無しさん [2025/02/04(火) 12:24:19.84 ID:AbihjpY6a.net] data1=b'Z\x00V\x00-\x00E\x001\x000\x00\x00\x00' じゃないのは何故なんだぜ
610 名前:デフォルトの名無しさん [2025/02/04(火) 19:51:38.43 ID:Nh0/7bRn0.net] Google Colaboratoryで自動でカッコやシングルクォーテーション、ダブルクォーテーションを閉じてくれるのはいいのですが 改行するのに右小指を右矢印まで移動させるのが面倒くさいです この機能を有効にしながらタイピングのホームポジションから極力指を動かさずにプログラムを改行する方法はどういったものがありますか
611 名前:デフォルトの名無しさん mailto:sage [2025/02/04(火) 20:02:33.96 ID:Q6BV74Me0.net] ダイヤモンドカーソル
612 名前:デフォルトの名無しさん mailto:sage [2025/02/04(火) 20:05:48.54 ID:Yb/oB3W3M.net] wordmasterですね?
613 名前:デフォルトの名無しさん mailto:sage [2025/02/04(火) 20:15:46.13 ID:bltbnC560.net] キーボードショートカット表示させたら発見多い vimバインドがあるのにも気づける
614 名前:デフォルトの名無しさん mailto:sage [2025/02/04(火) 20:16:37.26 ID:Q6BV74Me0.net] capsキーをモディファイア化して、カーソルとpgup/dn, home, end, ctrl-home, ctrl-end なんかをそのへんのキーにアサインすると便利 ctrlなんかにするのはもったいない
615 名前:デフォルトの名無しさん [2025/02/05(水) 12:03:09.56 ID:0aVaPzHU0.net] textwrap --- テキストの折り返しと詰め込み https://docs.python.org/ja/3.12/library/textwrap.html 標準ライブラリにこんなモジュールあったの初めてしった
616 名前:デフォルトの名無しさん [2025/02/05(水) 14:41:00.30 ID:RWIQAOlpa.net] ctrl+J ctrl+M
617 名前:デフォルトの名無しさん mailto:sage [2025/02/05(水) 18:14:35.27 ID:d15iAK/y0.net] WindowsだとCtrl+EやCtrl+Aは動かないんだっけ?
618 名前:デフォルトの名無しさん mailto:sage [2025/02/05(水) 18:53:32.47 ID:dNg2S/kf0.net] アンダースコア2個の変数って VSCodeのデバックでも見えなくなるんだな そこは値みせろよ
619 名前:デフォルトの名無しさん mailto:sage [2025/02/05(水) 21:07:19.31 ID:4wonhmBO0.net] https://www.deback.be 選択肢にないからドイツ語圏は弱小なんだな 学びがある
620 名前:デフォルトの名無しさん (ワッチョイ 63c4-SXYI) [2025/02/09(日) 17:06:41.88 ID:cm7GCNiQ0.net] スレッド処理できんぞこのポンコツ
621 名前:デフォルトの名無しさん (ワッチョイ 1a8b-RGTj) mailto:sage [2025/02/09(日) 17:14:28.12 ID:tUOkxeUe0.net] ThreadPoolExecutor使えば簡単に実装できるだろ GIL無効のはまだ試したことないけど
622 名前:デフォルトの名無しさん mailto:sage [2025/02/09(日) 22:07:58.46 ID:DVKKH7160.net] enumerate()はindexが追加される、と覚えてるから、 indexを2番目にしてしまうという間違いを繰り返す 大抵は、for val in array: と書いてて、 indexが必要になって追加すると思うので、 前に挿入という変更にも抵抗がある
623 名前:デフォルトの名無しさん mailto:sage [2025/02/09(日) 22:42:27.28 ID:1H3Dm2g50.net] 使い勝手からするとindexは先頭であってんだけど tupleやなくクラスだったらよかったかな 挿入という感覚はないな
624 名前:デフォルトの名無しさん mailto:sage [2025/02/10(月) 09:56:50.77 ID:JMZMJPbu0.net] items() が key, valueの順で渡してくるのは納得なんだよな enumerate() も意味的には似てるんだけど、 dictはforで読んだらkeyが返るけど、listは中身だしな まあ、複数同時に返して順番意識しないと間違う仕様が全部悪
625 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 17:02:51.99 ID:uy7D7eTZ0.net] windowsでリアルタイムで画像を描かせるとウィンドウが反応なしになる 最初pygameで作って、Pyxelでも駄目で、matplotlibも駄目だった どう見ても原因はwindows側なんだけど、どうやったら回避できるんだろう
626 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 17:53:45.53 ID:iuf/njBUM.net] メッセージキューの状態は?
627 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 18:21:00.45 ID:gV1L3zya0.net] 型ヒント、どうやって書くとおK? >>> a:int, b:int = 1, 2 File "<stdin>", line 1 a:int, b:int = 1, 2 ^ SyntaxError: invalid syntax
628 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 18:50:18.04 ID:UcNEd134M.net] >>617 そういう書き方しなければならない理由ある?
629 名前:デフォルトの名無しさん [2025/02/13(木) 20:34:08.66 ID:gV1L3zya0.net] >>618 そういう書き方とは何を指したの。 書き方がおかしいので、正しい書き方を質問した。
630 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 21:07:07.34 ID:1OgGkneUp.net] 二ついっぺんに?
631 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 21:41:07.46 ID:uy7D7eTZ0.net] def func(a:int = 0, b:int = 0): # OK a, b = 0, 0 # OK a:int = 0, b:int = 0 #NG ということだな
632 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 23:08:28.29 ID:FScSEbGI0.net] >>619 回答がでてるから(俺は確認してない) 気にしてないと思うけど コードは手段であって目的ではない エラーが出てよくわからないなら別の方法探すのが合理的だろ?
633 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 23:20:12.60 ID:uy7D7eTZ0.net] a, b = 0, 0 のケースは、 (a, b) = (0, 0) というタプルへの代入の省略形だと思うので、 関数定義の引数の列とは本質的に別物 タプルだと思って書くと、 (a:int, b:int) = (0, 0) これが文法的に許されてるかという個別の話になって、 単純にタプルに型アノテーションは書けません という誤りに帰着する
634 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 23:39:49.88 ID:3i0teOTZ0.net] >>621 >a:int = 0, b:int = 0 #NG a:int = 0; b:int = 0 #OK 7.2.2. Annotated assignment statements The difference from normal Assignment statements is that only a single target is allowed. https://docs.python.org/3/reference/simple_stmts.html#annotated-assignment-statements
635 名前:デフォルトの名無しさん mailto:sage [2025/02/13(木) 23:48:39.44 ID:3i0teOTZ0.net] 変数の数が多かったりアノテーションが長かったりするのであれば 一旦1つの変数で受けといてからunpackすればいいんじゃないか思う style guideとかでこの辺りが確立されてるやつがあるのかどうかは知らん xs: Tuple[Optional[int]] = 1, 2, 3 x, y, z = xs
636 名前:デフォルトの名無しさん (ワッチョイ ef54-r5n3) mailto:sage [2025/02/13(木) 23:50:55.54 ID:uy7D7eTZ0.net] a:int = 0, b:int = 0 だと何が不味くてエラーにしたのか、ピンとこないな 誤解の余地はどこにもないと思うけど
637 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 00:40:32.45 ID:itWJ0HMk0.net] 文法規則に沿ってないからエラーになってるだけでしょ a:int = 0, の時点でパーサーからすると`0, `はタプルなのに b:intのコロンようなサポートされてない表現が来てるから文法エラー
638 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 00:52:13.45 ID:kUuP9oE90.net] いや、言語設計の話ね 引数の列みたいなタプル的なもので許されてるなら、 タプルでも許されるような規則になってる方がコンシスタント それを許すと別の問題が生じるなら仕方ないけど、 特にそんなのがあるような気がしない
639 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 01:53:56.51 ID:itWJ0HMk0.net] 54氏に絡んだ私が馬鹿だったみたいだね
640 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 07:12:48.02 ID:P2h4GvQIH.net] 型アノテーションはどう考えてもコードを冗長にするだけの効果しかなかった 次期バージョンからは廃止して欲しい アノテーションありとなしのコードが混在する世界は誰も得しない
641 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 07:34:58.64 ID:8QRTr0+h0.net] 01氏は相変わらずだのう よく知らんけど
642 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 12:40:51.82 ID:mTgus/9Q0.net] 型アノテーションしないとvscodeでメソッドとか補完してくれないじゃん~
643 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 12:47:27.45 ID:rES5mJq/0.net] >>630 これはそう 型の表現がゴミなのでその型意味ある?ってやつばっかでノイズにしかならん tsみたいに別の処理系として作るべき
644 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 13:23:14.36 ID:6dC8Hfpk0.net] >>625 >xs: Tuple[Optional[int]] = 1, 2, 3 これじゃダメじゃん ellipsis忘れてた
645 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 19:00:49.38 ID:y0//4+C60.net] どうせdataclassで型指定が必須になる
646 名前:デフォルトの名無しさん [2025/02/14(金) 22:20:16.99 ID:zA34SgDn0.net] age : int = int(9) 右のint()は不要ってことだよね 今だと全部上の文にしようとしていました
647 名前:デフォルトの名無しさん mailto:sage [2025/02/14(金) 22:27:43.41 ID:y0//4+C60.net] 型なんかコンテキストに任せるperlの時代がまた来ないかな 厳密なのはCに任せておいて、手抜き派は限界まで脱力しないと
648 名前:デフォルトの名無しさん (ワッチョイ 8edb-u07z) [2025/02/14(金) 23:33:39.76 ID:zA34SgDn0.net] perlは$@%で変数の中身と参照方法の手がかりがあるの楽すぎる しかも記号の切り替えでアクセス方法も切り替えられる 初心者の俺だけかもしれないけど
649 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 00:03:38.48 ID:7QZxROg40.net] >>638 dollar_とかatmark_とか変数に付ければいいのでは?
650 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 00:09:45.51 ID:nmEKbiHe0.net] 指し示す時は%varとか@varだけど、使う時は$var{}とか$var[]なのは、 普通に混乱するよな 同じ名前が使えるのはやばすぎるので、敢えて使わないようにしてた
651 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 00:24:38.71 ID:Ff6IMwfd0.net] >>636 右のint()はintにキャストしたい時に使う 左のintも大半の箇所では不要 数値リテラルで初期化する場合に明示的に型を書く必要があるケースはあまりない 上で書かれてるdataclassのfieldなんかは例外
652 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 01:12:51.65 ID:8VzqP0+T0.net] type aliasでwin32 apiみたいに狂ったようなヘッダーファイルのimportとかになったら嫌だな
653 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 02:36:03.74 ID:jP/E47uy0.net] 型ヒントないとやだやだ
654 名前:デフォルトの名無しさん (ワッチョイ 8edb-u07z) [2025/02/15(土) 03:01:40.24 ID:uBYSxski0.net] >>641 ありがとうございます
655 名前:デフォルトの名無しさん (ワッチョイ 8edb-u07z) [2025/02/15(土) 03:03:06.76 ID:uBYSxski0.net] >>640 なるほど
656 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 09:21:15.19 ID:PDHi7G9/0.net] 一括代入の左辺って、正確にはタプルではないよね。タプルに引き付けて考えるより、代入文の構文の1類型として整理しておく方が良いんじゃないかと思うが。
657 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 10:22:34.31 ID:FKA6BWJy0.net] >>> x = a, b = 2, 3 >>> type(x) <class 'tuple'> よくわからんな
658 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 10:51:26.01 ID:HEvUb6VY0.net] >>646 タプルとおもっていたが、正確には何なの?
659 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 13:22:10.39 ID:j/KKg+ui0.net] タプルだよ a, b = 1, 2 は(a, b) = (1, 2)と同じ 内部的にも一旦タプルとして扱われてunpackingが行われる [a, b] = 1, 2とかにすれば左辺はリストになるけど 括弧省略したカンマ区切りの場合はタプル
660 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 14:36:18.19 ID:0rXlrcS60.net] たとえば、タプル (3, 4) では、(要素0の)3を指すポインタと(要素1の)4 を指すポインタとはメモリ上隣接した位置に配置されるけど、 a = 1 b = 2 の後に a, b = 3, 4 と一括代入をしても、(一旦タプルが作られるのかどうかはともかく)そういうことにはならないんじゃない? *[a, b], c = 1, 2, 3 のようないわゆるスター代入も、イテラブルのunpackではないと思うし。
661 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 16:45:49.40 ID:yy3Wu/gg0.net] return文の複数値の返却もタプルだけど、 なぜかカッコを省略することが多い まぁ、あくまでカンマがタプルの肝だからということか
662 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 17:05:56.61 ID:0vZBBpUh0.net] リストの内包表記の[]を()にすると、 タプル内包表記ではなくジェネレータ内包表記になる罠
663 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 17:06:49.88 ID:8VzqP0+T0.net] カッコの用途と意味が多くて初学者にはきついと思うわ ( ) はタプルとGenerater { } は辞書と集合 [ ] はリストと内包表記
664 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 17:09:49.95 ID:0vZBBpUh0.net] 空の集合で初期化しようとしてs = {} とか書いてしまう罠 (1,) とか class_ とか苦し紛れいろいろ
665 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 17:33:56.56 ID:0rXlrcS60.net] 丸括弧は関数・クラス等の呼び出し、角括弧はリスト、波括弧は辞書および集合。 リストと辞書と集合には内包表記があって、generator式は内包表記の仲間。 そうやって整理する分には、(単要素タプルの書き方がちょっと不格好なところを除けば)そんなに違和感はないけどなぁ。 辞書についてリテラル表記は波括弧なのに参照は角括弧なのはちょっと引っかかりを憶えないでもないけれども、これは他の言語でもそうだし。 他の言語と比べて特に複雑ということはないと思うけど。 むしろVBAみたいに、配列の添字指定に丸括弧を使わされたりする方が嫌だわ。
666 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 19:13:45.78 ID:PDHi7G9/0.net] immutableなタプルの要素にはそもそも代入ができないはずなので、それだけでも一括代入の左辺がタプルでないのは明らかなのでは。 一括代入の左辺に丸括弧や角括弧が使えるのは、入れ子構造になっているときにその構造を明確にするために過ぎず、リストやタプルとは全く関係ないって考えた方が分かりやすいように思う。
667 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 23:10:55.08 ID:DkQLiBFd0.net] 左辺と右辺で違いがあるのは当たり前 右辺の値としてのタプルと左辺の言うなればパターンとしてのタプルが 全く同じように評価・実行されるわけがない タプルじゃないとしたほうがわかりやすいならそうすればいいとは思うけど 言語的には左辺の(a, b)もタプルという扱い
668 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 23:12:46.33 ID:DkQLiBFd0.net] ASTで見るとこうなる import ast expr = ast.parse("a, b = 1, 2") print(ast.dump(expr, indent=4)) Module( body=[ Assign( targets=[ Tuple( elts=[ Name(id='a', ctx=Store()), Name(id='b', ctx=Store())], ctx=Store())], value=Tuple( elts=[ Constant(value=1), Constant(value=2)], ctx=Load()))])
669 名前:デフォルトの名無しさん mailto:sage [2025/02/15(土) 23:29:56.42 ID:0vZBBpUh0.net] a = 1 b = 2 t = (a, b) print(t) # (1, 2) a = 3 b = 4 print(t) # (1, 2) 変数でもそのオブジェクトでもなく、 中に入ってるものでタプルを作る だから、(a, b) がタプルというのも不正確
670 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 00:53:20.10 ID:wh5aR4tC0.net] >>657-658 ASTでタプルとされているからタプルなのだ、それが言語上の定義なのだと言われればそうですかと言うしかないのだけれど、メモリレイアウトがどうなっているかは気になるな。a, bはメモリ上隣接した位置に配置されるのか、それとも、離れた位置に配置されるけれども代入文の左辺である限りはタプルと呼んでいいということなのか。
671 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 07:14:20.57 ID:ThFtPuZc0.net] メモリ上隣接はCPythonの話? それこそはいそうですかだけど
672 名前:デフォルトの名無しさん [2025/02/16(日) 12:09:07.95 ID:rAQQ2/+ca.net] (a, b): (int, int) = (0, 0)
673 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 13:10:26.00 ID:24lkekzA0.net] >>660 a, b = 1, 2とすればaとbが個別のローカル変数としてスタックフレームに追加されるだけ CPythonでは定義順になるから内部の配列内で隣接してる場合もあればしてない場合もある スタック上の変数でかつそれぞれ直接アクセスしかしないんだから隣接してるかどうかは実用上はどうでもいいこと
674 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 13:51:57.18 ID:dLfK62nh0.net] そうでしょ、やっぱりメモリレイアウトが全然違うよね。 一括代入の左辺の場合には、その後もタプルとして使われることは全くなく個別的にしかアクセスしないのだから、メモリ上隣接しているかどうかがどうでもいいというのはある意味当然のことで、それは、通常の意味でのタプル(固定長でimmutableなコレクション・コンテナとしてのタプル)でないことの裏返しだと思うけど。 言語仕様上はそれもまたタプルとして定義されているということであれば「タプルではない」というのは正しくないことになるしそれはそれで構わないのだけれど、重要なのは通常の意味でのタプルとは全く別物だという点であって、その点の認識はあった方が良いんじゃないかなぁ。
675 名前:デフォルトの名無しさん [2025/02/16(日) 13:58:47.89 ID:rAQQ2/+ca.net] a, b = 0, 0 構文解析上の文法は (a, b) = (0, 0) の略 ではなく a, b = (0, 0) の略 じゃないかな 代入前(右辺)はタプルで代入後(左辺)はタプルではなく個別 もし左辺がタプルならbindされた名前が無いので利用出来ない
676 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 14:30:13.56 ID:dLfK62nh0.net] 一括代入の左辺のターゲット並びは、丸括弧や角括弧で囲うことも全く囲わないこともできる。 角括弧で囲った場合はリストになり、丸括弧で囲った場合や全く囲わない場合はタプルになるということはできるけれども、通常の意味でのリストやタプルとはまったく別物だし、その後もリストやタプルとして利用されることはないので、それがリストやタプルであるということにどれほどの意味があるのか、むしろ通常の意味でのリストやタプルと混同してしまう人が出かねない弊害の方が多いのではないかというのが個人的な感想。 むろん、言語仕様上、リストやタプルとして定義されていますということであれば、あえて逆らうつもりはないけれども、リストやタプルの概念の中に異質なものを抱え込むことになって概念内容が拡散するように思うし(e.g.要素に代入できるタプル)、概念整理としては、一括代入の左辺については、リストやタプルのリテラル構文の形式を借用した代入構文の一形式であって、それ自体としてはリストでもタプルでもないという形で整理した方が遥かに分かりやすいのではないかと思っている。
677 名前:デフォルトの名無しさん [2025/02/16(日) 15:20:14.54 ID:rAQQ2/+ca.net] >全く囲わない場合はタプルになるということはできるけれども いや出来ないやろ
678 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 16:31:54.22 ID:dLfK62nh0.net] 自分は、一括代入の左辺については(通常の意味での)リストやタプルとは区別した方がわかりやすいのではないかという立場だけど、これらもリストやタプルであると考える立場に立つ場合、その中で、丸括弧で囲むか否かによってタプルになったりならなかったりするという考え方はないんじゃない? ASTでは丸括弧がなくてもタプル扱いみたいだし(>>658 )
679 名前:デフォルトの名無しさん [2025/02/16(日) 16:50:55.15 ID:rAQQ2/+ca.net] 左辺がタプルになる代入は c = 0, 0 とか _ = 0, 0 の場合な訳で (後者は暗黙で名前が付かないbindの例で敢えて描いたけど) (a, b) = 0, 0 はタプルに代入してる訳じゃないでしょ という立場ですね
680 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 17:02:45.20 ID:ThFtPuZc0.net] >>669 >>647 タプルでもリストでもない何かとしてもいいけどね 即値だけのコードも正当なのでbinding(assignment?)の有無は根拠にならんかも
681 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 17:36:27.88 ID:dLfK62nh0.net] c = 0, 0 と _ = 0, 0 は、代入ターゲットが1つしかない単一代入の文だから、今の話題と直接的な関係はないかと。 一括代入として、 ア a, b = 0, 0 イ (a, b) = 0, 0 ウ [a, b] = 0, 0 の3つの文に実質的な違いは(おそらく)何もなく、あえて左辺がタプルだリストだという必要はないのではないか(少なくとも通常の意味でのタプルやリストではないので、これらがタプルやリストであると考える意味もほとんどないのではないか)、それよりも一括代入の構文として共通のものとして理解する視点の方が有用なのではないかという感覚かな。 言語仕様上、リストやタプルの概念がこれらも含むような形で定義されているかはまた別の問題として。
682 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 22:36:18.21 ID:38lJcH0O0.net] 個人的には一括代入って言葉の方がよっぽど気になるけどな
683 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 22:53:37.86 ID:6PRP0OeT0.net] 用語法はまったく本質的な部分ではないので、意味が通じれば何でもいいと思うけど。一括代入、複数代入、多重代入、併行代入……好きなのを使えばいいんじゃない? 既に定着している用語法があるならそれに従っておく方が無難だとは思うが。 あとa = b = c みたいなのと語感上、区別しやすい用語だとなお良いね。
684 名前:デフォルトの名無しさん mailto:sage [2025/02/16(日) 23:06:15.10 ID:38lJcH0O0.net] じゃ左辺のタプルも意味が通じればなんでもいいんじゃない?
685 名前:デフォルトの名無しさん (ワッチョイ cb10-+v22) mailto:sage [2025/02/17(月) 00:13:36.55 ID:S+Nz3ahz0.net] 要素に代入できるタプルというものを観念して、いわば特殊なタプルと位置付けてタプル概念に含める方向性で考えるのか、タプルとは区別して整理する方向性を指向するのかというのは、理屈としてはタプル概念の外縁の画定に関する1つの態度決定の問題だから、重要でないとはいえないだろうし、タプルに含める立場をとる場合でも、通常の意味でのタプル(immutableな固定長コンテナとしてのタプル)とは質的に異なるということを意識しておくことは実践的にも意味がある……と自分なんかは思うけど、人の考え方はさまざまだからね。674が、用語法の違いと同程度のどうでもいい問題だと思うのなら、実際674にとってはそうなんでしょ。そのことを否定はしないよ。
686 名前:デフォルトの名無しさん mailto:sage [2025/02/17(月) 00:31:13.10 ID:ROCyt//h0.net] 利用者から観察できんし内部処理知ってると最適化できる類のもんでもなさそう 今の処理系でどういう扱いしてるのか知りたいならわかるけど 個人的にはどうでもいい寄りというかあえて意識したくない話かな
687 名前:デフォルトの名無しさん mailto:sage [2025/02/17(月) 11:24:47.42 ID:5+w8yWyk0.net] 「正確にはタプルじゃない!」とイキった手前どんなに見苦しい言い訳を繰り返してでも自己正当化したいのだろう
688 名前:デフォルトの名無しさん mailto:sage [2025/02/17(月) 12:14:13.77 ID:kwgQ3IwM0.net] タプルオブジェクトではないとでも言っておけば不毛なレスバしなくてよかったのにね
689 名前:デフォルトの名無しさん (ワッチョイ e327-g3m2) mailto:sage [2025/02/17(月) 12:36:50.89 ID:Ta1N8VfU0.net] レスバしたという感覚はないし、そんなに間違ったことを書いたつもりもないんだけどな。678のいう「タプルオブジェクトではない」という表現の方が受け入れやすいということなら別にそれで構わないと思うし。
690 名前:デフォルトの名無しさん mailto:sage [2025/02/17(月) 16:30:08.05 ID:33cG7id30.net] 5chで細かいところまで正確に伝えるのは難しいんだし あんまり気にしなくていいんじゃね SNSは議論に向かないしさ
691 名前:デフォルトの名無しさん [2025/02/18(火) 01:50:34.73 ID:kyyl/iJD0.net] 辞書に追加する方法を教えてほしいです 存在しないキーを追加してその中にさらにキーを追加したいです 以下だとエラーになりました https://pastebin.com/k1VaU5GZ
692 名前:デフォルトの名無しさん mailto:sage [2025/02/18(火) 02:55:12.14 ID:a4UZNug90.net] >>681 d["tomorrow"] = {"トマト": 70} ではどうだろう。(未検証)
693 名前:デフォルトの名無しさん [2025/02/18(火) 03:32:54.30 ID:kyyl/iJD0.net] >>682 うまくいきました! どうもありがとうございます!
694 名前:デフォルトの名無しさん [2025/02/18(火) 03:48:38.37 ID:kyyl/iJD0.net]
695 名前:"reply_link">>>681 この関連ですけど、辞書の中の辞書の一部のキーのバリューを変更するにはどうしたらいいですか? todayのりんごの値はそのままでみかんだけ40にしたいです [] [ここ壊れてます]
696 名前:デフォルトの名無しさん [2025/02/18(火) 08:18:06.27 ID:goEKoJkr0.net] >>684 値の変更はこれで良いのでは。 > d["tomorrow"]["トマト"] = 70 # これだとエラーになる
697 名前:デフォルトの名無しさん mailto:sage [2025/02/18(火) 08:51:43.27 ID:aG61gPOQ0.net] 混乱させるかもしれんけど標準モジュールcollectionsにあるdefaultdict使えば from collections import defaultdict d = defaultdict(dict, {"today": {"りんご": 100, "みかん": 50}}) d["tomorrow"]["トマト"] = 70 でエラーにならない d["tomorrow"] の時点で {} が自動生成される
698 名前:デフォルトの名無しさん (ワッチョイ e5b1-+v22) mailto:sage [2025/02/18(火) 09:17:41.68 ID:UncCeV9C0.net] get, setdefault, collections.defaultdict, __missing__ の違いについては、たしかEffectivePythonで2〜3項目さかれていたね。
699 名前:デフォルトの名無しさん [2025/02/18(火) 11:02:20.10 ID:HbHlBTpRa.net] まあうまくいくだろうし便利だろうけど キーのスペル間違いとかがチェックされない怖さはあるな
700 名前:デフォルトの名無しさん [2025/02/19(水) 07:26:57.60 ID:if5TaTL20.net] 亀レスすみません みなさんありがとうございます >>685 これでうまくいきました >>686 エラーにならず.getのように自動生成されるのはいいですね
701 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 07:46:07.12 ID:ouE8cAfi0.net] いきなり参照してエラーになるのは嫌なので、 いつもgetを使うようにしよう というのは必ずしもいい考えじゃないんだよな エラーにならない筈のものがエラーになるなら異常なので捕まえるべき 本気で何が入ってるか予想できないケースではgetを使うしかないけど、 そんな状況になるのも何か間違ってる
702 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 08:27:04.14 ID:mSxUrXXi0.net] noneが帰るならそれキャッチしとけば同じじゃない?
703 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 09:44:18.83 ID:tY+HC/mE0.net] 新しいキーが挿入されるのはsetdefaultやcollections.defaultdictであって、getは別に新しいキーは挿入されないんじゃなかったっけ?
704 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 16:01:59.58 ID:7/rbEKea0.net] 想定していないことは例外にする 局所的に意図してフォールバックさせたいときはget 恒常的にはdefaultってだけよ
705 名前:デフォルトの名無しさん (ワッチョイ cd54-3IcV) mailto:sage [2025/02/19(水) 20:05:14.43 ID:O180uynF0.net] 継承したクラスにあった__repr__()をそのまま使って欲しいのにうまく行かない
706 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 21:58:33.63 ID:S2Edg5gIM.net] keyerrorとかindexerrorとか事前にかわせるやつも例外にするのどうなの? なんかコスト高そうな印象だけど
707 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 22:19:23.68 ID:7/rbEKea0.net] VMといえど高いし気になるならin (__contains__)を使えばとしか オレはコードの意図がつかみやすいかで使い分けてる
708 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 22:48:10.15 ID:/AQQIY230.net] Rustとか最近の言語って例外ないらしいじゃない。そっちの方が優れているというのがコンセンサスになったらPython4とか5とかのメジャーパージョンアップのときにそちらに舵を切るということもありうるのかな? 自分は3以降でPythonを知ったので、2→3のときの大改革ってのは未経験なんだけど。
709 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 22:56:14.91 ID:O180uynF0.net] 3での変更点って、ええー2ではまだそんなこと考えてたのという、 3が先進的というよりは2が後進的で、 pythonなら当然そうするでしょという感じなんだよな 2の頃はまだperlをメインに使ってた
710 名前:デフォルトの名無しさん mailto:sage [2025/02/19(水) 22:59:08.90 ID:aJXoRfiD0.net] 2はprintがステートメントで ステートメント?!と驚いた と思ったら3でもdelがステートメントでまた驚いた
711 名前:デフォルトの名無しさん mailto:sage [2025/02/20(木) 00:52:57.36 ID:laXgRgOS0.net] パイチョンはインタプリタが全然頑張らないアホの子
712 名前:デフォルトの名無しさん mailto:sage [2025/02/20(木) 04:49:24.69 ID:2izZplM70.net] 毎日が新鮮な驚きに溢れて楽しそうですね
713 名前:デフォルトの名無しさん (ベーイモ MM2b-gW//) mailto:sage [2025/02/20(木) 11:00:03.67 ID:gDWkqRFJM.net] >>697 Pythonは、ぼくこんぴゅーたのむずかしいことわかんないけどえーあいあぷりつくるんだもん!な子を満足させる使命があるから例外は必要 彼らが例外を放置してもアプリが止まってしまわないのはフレームワークが最終的にケツを拭いてくれているおかげ
714 名前:デフォルトの名無しさん mailto:sage [2025/02/20(木) 19:27:27.78 ID:qCo+divFH.net] 例外処理って必要? 書かなくてもPython自身が例外を出して止まるよね
715 名前:デフォルトの名無しさん mailto:sage [2025/02/20(木) 19:58:06.02 ID:YvSU5J1d0.net] 変な値が入力されたらエラーを表示したい でも入力部分はずっと下の階層の処理なので、 エラーの情報を上までバトンリレーしないといけない 例外なら言語がやってくれる
716 名前:デフォルトの名無しさん [2025/02/21(金) 06:33:27.06 ID:dPC4thbz0.net] ギャンブルのデータ分析?とai予想したいのですが、どういう環境がいいんでしょうか? anacondaが定番のような気がしますが、ローカルだとマシンパワーがどうなのかなと。 unityみたいなゲームエンジン上でも出来たりしますか?
717 名前:デフォルトの名無しさん mailto:sage [2025/02/21(金) 10:53:50.45 ID:ebrhUf4S0.net] GoogleのColabでええよ
718 名前:デフォルトの名無しさん [2025/02/21(金) 11:17:38.16 ID:0EY3V3nR0.net] >>703 例外処理っていうのは例外が発生した場合にリカバリー可能な処理を書くんだぞ その辺わかってなくて単純に例外の時にって思ってる奴が多い 具体例で言うと通信 ゲームとかのアップデート想像してみればいい 大容量データダウンロードしてる時に通信状況が悪くなった 例外処理が無ければそのまま例外吐いて失敗となる ここで例外処理として通信状況が良い所に移動しろ的なメッセージを出して続行ボタン押させたり、数秒から数十秒間隔で通信を再開させるようにした場合は処理がスムーズになるやろ こういう風にリカバリー可能な処理を書くのが例外処理やで
719 名前:デフォルトの名無しさん [2025/02/21(金) 11:41:35.66 ID:vI88dzmZa.net] >>705 もちろんUnityでも出来るよ
720 名前:デフォルトの名無しさん [2025/02/21(金) 13:53:02.83 ID:dPC4thbz0.net] >>708 一般的にデータ分析ってアナコンダとか使うんですかね? ゲーム目的じゃないですから
721 名前:デフォルトの名無しさん [2025/02/21(金) 15:26:48.94 ID:NDdeWha40.net] 現実世界の様子やUIを理解してタスクをこなせるマルチモーダルAIエージェントの基盤モデル「Magma」をMicrosoftが発表 https://gigazine.net/news/20250221-microsoft-magma/ 悪用されている
722 名前:デフォルトの名無しさん [2025/02/21(金) 17:14:00.29 ID:0EY3V3nR0.net] >>709 anacondaというよりjupyterを使う なのでgoogle colabでも良いしvscodeのプラグイン入れてでも良い
723 名前:デフォルトの名無しさん [2025/02/21(金) 18:41:20.24 ID:dPC4thbz0.net] >>711 ありがとう jupyterlってのが必要なんすね 機械学習をunityでやろうとしてましたけど、それと別途で用意します
724 名前:デフォルトの名無しさん [2025/02/21(金) 18:53:52.10 ID:YTEtnXyW0.net] >>712 >>711 みたいな馬鹿を信じるなよ
725 名前:デフォルトの名無しさん [2025/02/21(金) 19:06:12.50 ID:hCnqiwLw0.net] LLM の推論機能を活用する新しいバックドア攻撃「DarkMind」が提唱される https://gigazine.net/news/20250221-darkmind-chain-of-thought/ AIはチェスで負けそうになるとチートする https://gigazine.net/news/20250221-ai-chess-cheating/
726 名前:デフォルトの名無しさん [2025/02/21(金) 23:21:50.44 ID:TllVjNz50.net] from datetime import datetime t_start: str = "23:00" t_end: str = "24:00" t_start_dt: datetime.datetime = datetime.strptime(t_start, "%H:%M") t_end_dt: datetime.datetime = datetime.strptime(t_end, "%H:%M") unix_t_start: float = t_start_dt.timestamp() unix_t_end: float = t_end_dt.timestamp() x = int(unix_t_end - unix_t_start) print(x) t_endが24だと以下のエラーが出ます 24時間表記の時は%Hではないんでしょうか? ValueError: time data '24:00' does not match format '%H:%M'
727 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 00:07:13.49 ID:Oo9CzgQsM.net] >>715 知らんけど時間って 00:00:00~23:59:59 ちゃうの?
728 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 00:28:58.03 ID:rVspP8iQ0.net] 不親切なエラーだよね
729 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 00:58:09.16 ID:eBlj03Lj0.net] 境界値の問題って定番じゃね テストケースにも必ずいれるだろ
730 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 07:44:50.26 ID:mdQ5EfsK0.net] 閏秒なんか廃止で当然だよな
731 名前:デフォルトの名無しさん [2025/02/22(土) 12:10:03.03 ID:kWiPacnr0.net] >>716 ありがとうございます このようにしてみましたがもっとスマートな方法ってありますか? from datetime import datetime t_start: str = "23:00" t_end: str = "24:00" if t_end[0:2] == "24": t_end = f"00:{t_end[3:5]}" t_start_dt: datetime.datetime = datetime.strptime(t_start, "%H:%M") t_end_dt: datetime.datetime = datetime.strptime(t_end, "%H:%M") unix_t_start: float = t_start_dt.timestamp() unix_t_end: float = t_end_dt.timestamp() if t_end[0:2] == "00": unix_t_end += 86400 # 24時間足す x = int(unix_t_end - unix_t_start) print(x)
732 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 12:19:18.21 ID:mdQ5EfsK0.net] 何がしたいのか不明だけど、時間の計算にはtimedeltaを使う
733 名前:デフォルトの名無しさん [2025/02/22(土) 12:35:47.16 ID:kWiPacnr0.net] >>721 ありがとうございます 調べてみます
734 名前:デフォルトの名無しさん [2025/02/22(土) 12:42:40.44 ID:kWiPacnr0.net] やりたいことはt_startとt_endの中に入ってる文字列の時刻の差分を求めたいです
735 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 12:44:39.38 ID:mdQ5EfsK0.net] といいつつ、日付ではなく時間の長さをhh:mm:ss形式で書きたい時用に、 秒単位のfloatと文字列の相互変換ライブラリを自作した 標準にはいいの無い
736 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 12:51:12.03 ID:mdQ5EfsK0.net] うちのライブラリで書くと、 delta = str_sec(t_end)-str_sec(t_start) print(sec_str(delta)) こんな感じになる
737 名前:デフォルトの名無しさん [2025/02/22(土) 13:11:12.71 ID:kWiPacnr0.net] 途中経過ですけど今こんな状態です t_start: str = "23:00" t_end: str = "24:00" dt_now = datetime.now() t_start_dt = datetime(year=dt_now.year, month=dt_now.month, day=dt_now.day, hour=int(t_start[0:2]), minute=int(t_start[3:5])) if t_end[0:2] == "24": dt_d = dt_now.day + 1 # もし現在が月の最終日だとエラーになる "ValueError: day is out of range for month" t_end_dt = datetime(year=dt_now.year, month=dt_now.month, day=dt_d, hour=0, minute=int(t_end[3:5])) else: t_end_dt = datetime(year=dt_now.year, month=dt_now.month, day=dt_now.day, hour=int(t_end[0:2]), minute=int(t_end[3:5])) x = t_end_dt - t_start_dt print(t_start_dt) print(t_end_dt) print(x)
738 名前:デフォルトの名無しさん [2025/02/22(土) 13:58:51.98 ID:kWiPacnr0.net] 何度もすみません とりあえずこうなりました なんだが余計に長くなった気がします from datetime import datetime def strToDt(str_dt: str): dt_now = datetime.now() # TODO 25や26の場合があるかもしれないので24決め打ちはやめる if str_dt[0:2] == "24": next_dt = dt_now + timedelta(days=1) dt_dt = datetime(year=next_dt.year, month=next_dt.month, day=next_dt.day, hour=0, minute=int(str_dt[3:5])) else: dt_dt = datetime(year=dt_now.year, month=dt_now.month, day=dt_now.day, hour=int(str_dt[0:2]), minute=int(str_dt[3:5])) return dt_dt t_start: str = "23:00" t_end: str = "24:00" t_start_dt = strToDt(t_start) t_end_dt = strToDt(t_end) x = t_end_dt - t_start_dt print(t_start_dt) print(t_end_dt) print(x) # 時間:分:秒 形式 # TODO xを分形式に変換する
739 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 14:01:58.99 ID:92tqsAYeM.net] 初学者だと思うけど end>startが保証されてるなら >725
740 名前: みたいに秒に変換して引き算が正解じゃない? [] [ここ壊れてます]
741 名前:デフォルトの名無しさん [2025/02/22(土) 14:16:15.84 ID:kWiPacnr0.net] >>728 Endが24までなのか25や26もあるのか、それとも24の次は1なのか確実じゃないのでその辺考えて修正してみます やっぱりタイムスタンプに変換した方が短くなりますか? あと、727のインポートでtimedeltaが抜けてました
742 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 14:22:19.90 ID:mdQ5EfsK0.net] print(datetime.now()) これの出力が 2025-02-22 14:20:40.735896 これになるのが嫌 秒を整数にしてくれたらそのまま使えるのに
743 名前:デフォルトの名無しさん [2025/02/22(土) 15:29:44.08 ID:kWiPacnr0.net] 何度もすみません こうなりました 今のところt_startよりもt_endが小さいとエラーになります https://techiedelight.com/compiler/?119b
744 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 18:46:10.84 ID:/k68f2f30.net] pandasなら+“:00”してHH:mm:ss形式に揃えれば25:00や26:00でもパースできるけど簡単な処理だから自分で計算すればいいんじゃないかと思う def parse_as_minutes(hhmm): hours, minutes = [int(x) for x in hhmm.split(':')] return hours * 60 + minutes
745 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 18:52:17.77 ID:mdQ5EfsK0.net] そんなのを毎回作ってられない 2回くらいは作る 3回目あたりで、本腰入れて部品化する
746 名前:デフォルトの名無しさん (ワッチョイ 43ce-qk/j) [2025/02/22(土) 23:02:04.13 ID:eBlj03Lj0.net] >>731 https://techiedelight.com/compiler/?96ec これじゃ駄目なのか?
747 名前:デフォルトの名無しさん mailto:sage [2025/02/22(土) 23:31:26.22 ID:d1IFpLYA0.net] 劣化しとるやないかーい
748 名前:デフォルトの名無しさん (ワッチョイ 6e9a-1YEc) [2025/02/23(日) 09:47:38.74 ID:BUMkVt7f0.net] 個人レベルで機械学習学んでも意味無いですかね? 例えば競馬予想aiを作りたいとして しかし、けっきょくのところデータがないと、学習モデルだけあっても意味ないですもんね 競馬なら馬場状態を数値化したデータというのがないと、学習させられないですよね
749 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 10:33:41.64 ID:2+mAKcn80.net] >>730 そのくらいは標準で簡単に出来るだろ
750 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 10:36:52.09 ID:foL9AaqB0.net] >>736 自分で学習すりゃいいじゃん データなんていくらでもあるんだし
751 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 11:58:59.62 ID:uSqDrBD8M.net] >>736 他人の後追いするぐらいなら他人のシステム使えばよい 競輪なんて放送でAI予想の倍率出しながら中継してる
752 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 12:29:42.21 ID:TNVZaLWv0.net] オッズの計算に投票だけではなくAI予想も加味したら、 面白さと利益率が上がるのでは
753 名前:デフォルトの名無しさん [2025/02/23(日) 13:11:05.65 ID:BUMkVt7f0.net] >>739 例えばバンクのホコリっぽさとか、選手の体調とか、そういった不確定要素ってデータがないですよね なので、公式のデータ以外ないとするなら、あまりやる意味がないのかなと
754 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 13:17:20.60 ID:TNVZaLWv0.net] 確率が計算できて、オッズがその確率通りならば、どこに賭けても期待値は同じ 実際には、確率とオッズに乖離が発生する そこに着目して、確率の高いところではなく、期待値の高いところに掛けると儲かるかもしれない
755 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 14:34:58.45 ID:uSqDrBD8M.net] >>741 競輪AIだと雨が降ってると硬い結果になる 選手が雨の中危険な勝負して事故ったりしたくないんだろ
756 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 15:42:44.26 ID:TNVZaLWv0.net] early continue 便利だな 行は増えるけどネストは浅い方がいいので積極的に使おう
757 名前:デフォルトの名無しさん [2025/02/23(日) 16:11:59.81 ID:r171NbV30.net] >>744 横からだけどサンクスこれいい
758 名前:な [] [ここ壊れてます]
759 名前:デフォルトの名無しさん (ワッチョイ cd79-Ro5/) mailto:sage [2025/02/23(日) 16:59:33.82 ID:SH8eoGXi0.net] そんな言い方があるんだな 同じように関数で場合分けごとにさっさとreturnしてるけど これもearly returnっていうのを知らなかった
760 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 17:13:57.05 ID:TNVZaLWv0.net] 例えばループで文字列を処理していて m = re.search(pattern, str) found = m.groups()[0] これだと見つからない時にエラーになる で、 if m := にしたりするけど、見つからなかったら飛ばしたいなら、 else: continue になって、なんか変 最初から m = のままで、 if not m: continue を付ければすっきりする セイウチは絶滅の方向で
761 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 18:43:24.49 ID:ap5ufkCU0.net] それ最初からelse: continue必要ないじゃん
762 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 19:01:50.10 ID:TNVZaLWv0.net] elseをほっとくと、foundの中身が不定になってしまう 事前にNoneを入れておいたりして、後の処理でNoneなら飛ばす みたいなことになる そんなことするくらいなら、continueしてしまった方が後腐れない
763 名前:デフォルトの名無しさん (アウアウウー Sa39-c/TO) [2025/02/23(日) 19:46:23.76 ID:CZU86cpwa.net] >>709 Unityがゲームしか造れないという考え方は改めるべき
764 名前:デフォルトの名無しさん (アウアウウー Sa39-c/TO) [2025/02/23(日) 19:48:54.69 ID:CZU86cpwa.net] re.findall(pattern, str)
765 名前:デフォルトの名無しさん (ワッチョイ 0154-ePnC) mailto:sage [2025/02/23(日) 20:05:27.12 ID:TNVZaLWv0.net] もしかしてfindallって全ての点でsearchに勝ってる?
766 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 20:54:18.71 ID:ap5ufkCU0.net] なんでだよw めちゃくちゃ要領悪いな
767 名前:デフォルトの名無しさん [2025/02/23(日) 22:37:16.02 ID:R0b4DHIEd.net] >>749 gotoを多用しそうな人発見
768 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 23:03:58.66 ID:LVu8ljPH0.net] pythonのreはAPI設計に難があるよね 他の言語から戻って来るたびに仕様の確認が必要
769 名前:デフォルトの名無しさん mailto:sage [2025/02/23(日) 23:09:23.71 ID:TNVZaLWv0.net] perlから来たからsearchばっかり使ってるけど、 findallの方がこなれてそうだな
770 名前:デフォルトの名無しさん (ワッチョイ 6e9a-1YEc) [2025/02/24(月) 05:49:40.37 ID:ujJrcFED0.net] >>750 tensorflowとかunityで使えるんすか(´・ω・`)
771 名前:デフォルトの名無しさん (ワッチョイ 752a-xrb0) [2025/02/24(月) 08:23:49.32 ID:TCszVRfv0.net] >>747 > 最初から m = のままで、 > if not m: > continue > を付ければすっきりする > セイウチは絶滅の方向で 話題をよく理解していないのだけれど、 コロンイコールを使って、そのように論理を逆転してやればすっきりする、というハナシとも違うの? if not (m := re.search(pattern, str)): continue
772 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 12:12:57.30 ID:4WrA9fgL0.net] >>758 747じゃないがセイウチはどうもPythonicじゃない感ある 他言語のletみたいにスコープも閉じてないし
773 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 14:57:43.47 ID:d83yxTtH0.net] いくつかのパターンのどれかに合致する、みたいな時は if m := elif m := elif m := みたいにしか書きようがない パターン検査と結果取得を同時に書かないと、同じことを2回書くことになる
774 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 15:09:39.96 ID:Jwc6B7rV0.net] >>756 ほんとにperl使ってた? gフラグ + リストコンテキストを真似したのがfindallなんだが
775 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 15:27:48.14 ID:d83yxTtH0.net] だからこそ、1行で決まった数キャプチャーする時はsearchで、 全体からいくつあるか判らないけどあるだけ取ってくる時はfindallという使い分け という設計だったけど、 1回しかマッチしないと判っててもfindallして[0]だけ使う方が使いやすいっていう
776 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 15:29:10.34 ID:4WrA9fgL0.net] >>760 人それぞれではあるけども 検査先を単一にしてパターンマッチングに持ち込めないんなら 一緒くたにしないで個別のifと必要なら早期return/continueにする Pythonの簡潔さって表現力があって強力な他言語とは趣がちがう
777 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 16:51:44.97 ID:Jwc6B7rV0.net] >>762 pythonでも使い分けできてないみたいだな 自分の不出来をperlのせいにしたらだめだぞ
778 名前:デフォルトの名無しさん [2025/02/24(月) 17:00:02.49 ID:qXEt7oPpr.net] C#のLINQは優秀だよな async/awaitみたいにあれも貰ってきてくれよ
779 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 18:19:27.76 ID:xkCGwjl20.net] >>760 そういうのはパターンとアクションをコレクションにまとめる
780 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 18:26:57.10 ID:d83yxTtH0.net] 具体的に何してるか書くと、日付や時刻をファイル名に含んだいろんなファイルを時系列ソートする 日付時刻の表記方法は10種類あって、どれでもない場合はタイムスタンプで代用する 日付は必ず含むが、時刻は無い場合もある なかなか統一的には書けないので、if m := elifのかたまりになる
781 名前:デフォルトの名無しさん [2025/02/24(月) 18:37:53.69 ID:qXEt7oPpr.net] 都度ファイル名を解析して時系列ソートするんじゃなくて一発バッチでファイル名を統一してしまうわけにはいかんのか
782 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 19:03:25.46 ID:Ts/aFZR80.net] >>767 そういうのこそコレクションにまとめるべき 10個もif-elseで同じことしない
783 名前:デフォルトの名無しさん mailto:sage [2025/02/24(月) 22:53:00.73 ID:Wgnd8zr+0.net] 本人は同じ処理を繰り返し書いてる認識自体がないんじゃないかな すごくベーシックなリファクタリング方法だけどメソッド抽出やクラス分割や統合に比べて認識できない人が多い印象がある
784 名前:デフォルトの名無しさん [2025/02/25(火) 09:13:08.75 ID:DokSK96w0.net] >>770 コードを例示してあげなよ。 プログラム板でコードで話さないのもどうかと思うよ。ベーシックならそうマル秘でもないのでしょう。
785 名前:デフォルトの名無しさん [2025/02/25(火) 09:54:29.03 ID:XzpdRQ1Sa.net] 769がwinprocのWM_hogehogeのifelse観ると卒倒するだろうな
786 名前:デフォルトの名無しさん mailto:sage [2025/02/25(火) 17:56:27.99 ID:PjrSO8Sc0.net] コンテキストが全然違うから比べる意味がない
787 名前:デフォルトの名無しさん mailto:sage [2025/02/25(火) 19:31:30.09 ID:z5mNSc8+0.net] 数百個のswitch caseは別に見にくいとは思わんのよな むしろ追加が簡単だからわかりやすい
788 名前:デフォルトの名無しさん (ワッチョイ cd01-p51G) mailto:sage [2025/02/25(火) 23:57:48.17 ID:xhjdbHGf0.net] >>771 わざわざ例示するのもちょっと恥ずかしいが一例を書いておく for (pattern, func) in rules: if m := re.search(pattern, string): return func(m) 他言語でstatic dispatchが求められる用途ではもちろん使わない
789 名前:デフォルトの名無しさん (ワッチョイ 0154-ePnC) mailto:sage [2025/02/26(水) 00:09:16.17 ID:wJOChXEu0.net] 各funcがそれぞれ違う内容の筈という前提があるけど、 殆どそっくりなfuncが延々と並んだら、もう少し頭いいやり方があるのでは、と思うだろう
790 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 00:50:58.38 ID:xhjdbHGf0.net] うーん そっくりじゃないから違う処理をしてる(と思ってる) 違う処理をしてるから統一的に書けない(と思ってる) というのがまさに「本人は同じ処理を繰り返し書いてる認識自体がない」状態なんだがなぁ
791 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 01:45:33.67 ID:TQg7w7Pj0.net] argparseとかUIのイベント処理がそんな感じだけど 数が増えたらボイラープレートだらけで美しくないんだよな
792 名前:デフォルトの名無しさん [2025/02/26(水) 02:08:13.92 ID:O0INS9IK0.net] 日付のパターン 正規表現にして その日付部分を引っ張り出してきて 戻り値にすればいいのでは
793 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 07:46:22.98 ID:EieBhFTu0.net] あー、それだ 30時間制でhourが23を超えてたら、24引いて1日足す、みたいな処理もあって、 それを各関数でやってられない 最終的に欲しいのはdatetimeのオブジェクトで、その変換も一括でやりたい で、全体を一つの処理にしてたけど、一番プリミティブな抽出部分だけ関数化すればいいのか 日付と時刻をバラバラで返すのは嫌すぎるのでclassにする
794 名前:デフォルトの名無しさん [2025/02/26(水) 09:52:35.13 ID:z2nMevLL0.net] >>776 もう少し頭いいコードを示すと良いのでは。 10パターンの日時表現を1パターンに収斂、統一させる。殆どそっくりなfuncも収斂させるのだろうか。
795 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 12:34:12.97 ID:RZQSvPw/0.net] 実際のパターン提示されてないし 一般化したい欲求から来てるのにそんな冗長なコード書くか?
796 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 13:24:03.55 ID:XqJTS5Fa0.net] 実際でなくていいよ。適当にググったこんなので。 2025-02-26T23:45:12.34.txt Wed 02-26-2025.dat Wed 26 Feb 2025 11:45:12 PM.txt
797 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 16:51:32.29 ID:w6olCj090.net] その例だけならarrow使えば正規表現使わなくても簡単にできるよ 25時とかは守備範囲外なので別途事前処理が必要
798 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 17:07:33.10 ID:n89P36ao0.net] ubuntu22.04,python3.10.12でUSBカメラ繋いで撮った動画を保存するプログラム作ろうとしたんだけど保存した動画が再生出来ないや 静止画を結合して動画にする事はできたからコーデック的な問題ではないと思うんだけど import cv2 cap=cv2.VideoCapture(0) width,height=int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)),int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) out=cv2.VideoWriter("/home/taro/Videos/result.avi,cv2.VideoWriter.fourcc(*"DIVX"),30.0,(width,height),isColor=True) print("録画を開始します") try: while cap.isOpened(): ret, frame=cap.read() if ret: out.write(frame) cv2.imshow("frame",frame) if cv2.waitkey(1) & 0xFF ==ord("q"): break else: break except KeyboardInterrupt: print("録画を終了します") finally: cap.release() out.release() cv2.destroyAllwindows()
799 名前:デフォルトの名無しさん mailto:sage [2025/02/26(水) 19:37:57.30 ID:j/LMUKKxa.net] aiに聞けよ
800 名前:デフォルトの名無しさん (ワッチョイ 8d59-D2xv) [2025/02/27(木) 11:58:07.92 ID:80QDg94G0.net] jsonファイルが開けません。何が原因でしょうか? https://techiedelight.com/compiler/?b14b6e 24行目以降はスクリプトの出力結果です TextIOWrapper型はダメと書いてあるようなんですけどどうしたらいいのか分かりません https://jsonlint.com jsonファイルの中はここで念のためチェックしました
801 名前:デフォルトの名無しさん (ワッチョイ 3d63-Ek8k) mailto:sage [2025/02/27(木) 12:05:58.52 ID:C53SLMw00.net] >>787 json.loadsは文字列やバイト列しか受け取れない fは文字列ではない
802 名前:デフォルトの名無しさん (ワッチョイ 8d59-D2xv) [2025/02/27(木) 12:07:08.33 ID:80QDg94G0.net] >>787 自己レス json.loadとjson.loadsは異なるようでjson.loadだと開けました
803 名前:デフォルトの名無しさん (ワッチョイ 8d59-D2xv) [2025/02/27(木) 12:07:38.80 ID:80QDg94G0.net] >>788 すみません!どうもありがとうございます
804 名前:デフォルトの名無しさん (ワッチョイ 8d59-D2xv) [2025/02/27(木) 12:10:05.49 ID:80QDg94G0.net] 修正してこれだと動きました https://techiedelight.com/compiler/?3c4203
805 名前:デフォルトの名無しさん [2025/02/27(木) 13:28:56.13 ID:VQNvJTxha.net] 伝わらないのは相手のスキーマに落として話してないから。 言い方がまずいのではなく、相手の思考に合わせて話さないから伝わらないという内容だったと理解しています。 普段からこの点に注意して周りの人と接するようになりました。
806 名前:デフォルトの名無しさん [2025/02/27(木) 13:29:27.69 ID:VQNvJTxha.net] 最後に生成aiが人と同じ思考をしないという記述がありました 特性をよく理解して使う必要があると思いました
807 名前:デフォルトの名無しさん mailto:sage [2025/02/27(木) 13:52:24.42 ID:/ts2T7b80.net] スキーマなどない。我が拳は我流。我流は無型。無型ゆえに誰にも読めぬ。
808 名前: mailto:sage [2025/02/27(木) 14:01:47.40 ID:VQNvJTxha.net] ごめん 何言ってるか判らん
809 名前:デフォルトの名無しさん mailto:sage [2025/02/27(木) 17:32:51.11 ID:ZgFfKBZe0.net] お互いに心のスキーマ埋めて話せよ ここはエスパーが集う優しいスレッドだぞ
810 名前:デフォルトの名無しさん [2025/03/02(日) 15:48:38.13 ID:HilFpukh0.net] a-shellの質問はここでいいの? iPhone、iPad用のPython用シェルなんだけど
811 名前:デフォルトの名無しさん mailto:sage [2025/03/02(日) 15:56:55.60 ID:/YCrqC3g0.net] コマンドで出来ることをPythonで作ってcmdで起動させてるんだけどなんかもやる。いい方法なんか無いかなあ。
812 名前:デフォルトの名無しさん mailto:sage [2025/03/02(日) 16:10:57.40 ID:NOlVOyMW0.net] コマンドでできることをpythonのosモジュールにやらせるとちゃんと動かなかったりするので、 cmdをsubprocessから実行させたりする もう高級batファイル
813 名前:デフォルトの名無しさん [2025/03/02(日) 17:51:07.79 ID:89Av+BX/0.net] >>798 コマンドで出来ることをコマンドにさせない理由が伝わらないので、もやるのが何故か分からない。
814 名前:デフォルトの名無しさん [2025/03/02(日) 17:59:44.66 ID:JAzjPHpUa.net] コマンドで出来ることをPowerShellで作ってcmdで起動させてる人なんかはもやらないんだろうか
815 名前:デフォルトの名無しさん [2025/03/02(日) 18:19:18.79 ID:xrnlJRcX0.net] お勉強スレだから頭の悪い人ばっかなの?
816 名前:デフォルトの名無しさん mailto:sage [2025/03/02(日) 19:39:01.42 ID:YF6lVSQXM.net] コマンドは一部職人芸みたいなのがあるとメンテが難しいからPowershellかアプリの場合もあるでしょ
817 名前:デフォルトの名無しさん mailto:sage [2025/03/02(日) 19:44:47.14 ID:NOlVOyMW0.net] 最近 for /f 知ったけど、むっさ便利
818 名前:デフォルトの名無しさん mailto:sage [2025/03/03(月) 04:16:34.72 ID:NAxKZqvR0.net] *nix shell scriptくらいがちょうどいい
819 名前:デフォルトの名無しさん [2025/03/03(月) 05:26:11.89 ID:xAYnQ1Zo0.net] コードを視覚化したいのですが、オブジェクト同士の通信と、オブジェクトが持つコードを同時に表現出来るものでしょうか? 前者はクラス図、後者はフローチャートでやるものだと思いますが マーメイド使ってます
820 名前:デフォルトの名無しさん [2025/03/04(火) 00:26:35.01 ID:r0fJoym10.net] フローチャートの定義済みの処理でいいんじゃないの 双方向に矢印書けば、オブジェクト同士の通信になるし
821 名前:デフォルトの名無しさん mailto:sage [2025/03/04(火) 00:37:06.85 ID:JHGbD3as0.net] 厳密に書ける図しか出てこないんだよな こまけぇこたぁいいんだよ、の図が一番判り易いのに
822 名前:デフォルトの名無しさん [2025/03/04(火) 17:23:52.29 ID:9TXFpBaY0.net] matplotlibでグラフ作成するプログラムをPyinstallerでexe化し、別PCで動かしたら「フォントがねぇ!」 って怒られるんだけど、Pyinstallerでビルドするときにフォントを内蔵し、 別PCでフォントをインストールすることなく実行する方法ってありますでしょうか。
823 名前:デフォルトの名無しさん (ワッチョイ 9901-3FuH) mailto:sage [2025/03/04(火) 18:02:09.59 ID:c62Mny0R0.net] 専用のフォントファイル使ってるならpyinstallerの--add-dataでexeにフォントファイル追加して 実行側のmatplotlib.FontManager.addfontで追加したフォントファイル読み込めばいいんじゃね? 試してないけど
824 名前:デフォルトの名無しさん [2025/03/05(水) 07:05:35.50 ID:DooANywKa.net] 代替フォントで表示されて 元のグラフと違う!って怒り出すまでがデフォ
825 名前:デフォルトの名無しさん [2025/03/05(水) 10:17:47.61 ID:k4iH0qBY0.net] こういう時こそ例外処理だ
826 名前:デフォルトの名無しさん [2025/03/05(水) 10:56:01.18 ID:t/BpZiCN0.net] そもそもexeにして配布してもアンチウィルスソフトに引っ掛かるのがオチ なんでstreamlitとかでWebって発想が無いのか
827 名前:デフォルトの名無しさん mailto:sage [2025/03/05(水) 12:29:12.97 ID:jqEKzIeO0.net] >>811 ㌧クス 内蔵した後のファイル呼び出し手間取ったけど実装出来ました。 >>813 そもそも配布するつもりはなくって、レアフォント使うからって言う理由があったんです。
828 名前:デフォルトの名無しさん mailto:sage [2025/03/05(水) 12:29:36.75 ID:jqEKzIeO0.net] 安価ミスった >>810 だったじゃん・・・
829 名前:デフォルトの名無しさん mailto:sage [2025/03/05(水) 12:40:03.54 ID:je2apegZd.net] 809ではないけど、俺もStreamlitでダッシュボード作ったことあるんだけどデータソースが機密度高すぎてとてもインターネットにはデプロイできないので、社内サーバで運用してたのだがこれはこれで面倒くて ElectronのPython版みたいなのあれば良いのにとは思うんだが eelとかpywebviewとかビックリするほど情報少ない、需要無いんだろうけど
830 名前:デフォルトの名無しさん [2025/03/05(水) 17:42:14.00 ID:t/BpZiCN0.net] >>816 AzureやAWSやGCPにデプロイすれば良いじゃん VNET使って外から切り離してその後ろに鯖立てる 更にWebページ自体にSSOで多分365とか使ってるだろうからEntraIDで認証
831 名前:デフォルトの名無しさん (アウアウウー Sa1d-8P30) [2025/03/05(水) 18:42:44.64 ID:wl9RyfHna.net] djangoだけでもいいけどSPAにしたければ Vue.jsとかExt.jsとかと組み合わせる
832 名前:デフォルトの名無しさん [2025/03/05(水) 20:27:38.71 ID:k4iH0qBY0.net] masterからbranch切ってコミットして、VSCodeにSyncronizeってボタンでたからそれ押したらmasterブランチで?に?pushされた これってコマンドだとどういうコマンド使ったことになるの? 何か嫌だったからmasterブランチの方はpullしてrevertして、masterと新しく切ったbranchをpushしなおした
833 名前:デフォルトの名無しさん [2025/03/05(水) 20:28:07.14 ID:k4iH0qBY0.net] gitスレと間違えちゃった
834 名前:デフォルトの名無しさん [2025/03/06(木) 13:35:09.45 ID:SW3gTDW+M.net] ブランチは切るものなのかw
835 名前:デフォルトの名無しさん (ワッチョイ b154-IWyi) mailto:sage [2025/03/06(木) 19:16:56.29 ID:I5dHg2CT0.net] 生やす
836 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 19:59:07.22 ID:mUwM1gxX0.net] 新たな方向への舵とかチケットを「切る」イメージなんだろうけど、 branchは枝だから、せっかく生やしたものを切ってしまってはまずいなw
837 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 20:50:07.68 ID:pxVL1qQZ0.net] 英語でcut a branchと言うのを訳したものなので舵を切るやチケットを切るの切るとはまた違う
838 名前:デフォルトの名無しさん [2025/03/06(木) 20:52:35.77 ID:vk5/DvbY0.net] そんなん使いだした奴に言うてくれよw
839 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 20:57:42.50 ID:ciT+lRoRM.net] おい!新人! ブランチ切っといて! はい!喜んで!(削除)
840 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 21:06:41.75 ID:I5dHg2CT0.net] アルファ・ベータ法でカットした筈の枝が生えそうだな
841 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 21:16:19.73 ID:MrSWvjk80.net] ブランチ切るって使うけど界隈によるんかな
842 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 21:37:30.89 ID:mUwM1gxX0.net] >>824 "cut a branch"は一般的な「枝を切る」ってだけの話で、 Gitでは"create a branch"じゃないの? 両者はまるで反対の意味になるし
843 名前:デフォルトの名無しさん [2025/03/06(木) 22:04:30.15 ID:mLXV+Jap0.net] >>823 プラナリアに切れ目を入れるイメージ
844 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:02:53.82 ID:hP34p9/Z0.net] cut a branchは「(枝道を)切り開く」のニュアンスかな cutting edgeとかcut one's wayのcut 直訳の「切る」だと通じない
845 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:11:01.62 ID:I5dHg2CT0.net] cutting edgeは切断面のイメージだけどな
846 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:19:51.18 ID:pxVL1qQZ0.net] >>829 gitとかのコンテキストでのcut a branchはcut a branch from masterとかcut a branch off of trunkを短く言ってるもので大元のものからisolateされた状態にするイメージ
847 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:28:56.20 ID:I5dHg2CT0.net] branchは分岐してるだけで本体とは繋がってるのに、 それをcutされたものと言っちゃうのはどうやっても誤解の原因になる それが面白いという悪ふざけや言葉遊びならいいけど、 あまりオフィシャルには使えない
848 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:39:18.99 ID:pxVL1qQZ0.net] 例えばこことか公式ドキュメントで普通にcutが使われてるよね https://tvm.apache.org/docs/v0.12.0/contribute/release_process.html#cut-a-release-candidate 英語でも日本語でも何十年も前から定着してる言い回し
849 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:45:48.92 ID:pxVL1qQZ0.net] 英語の辞書に載ってる意味で言うと↓ここのtransitive verbの3-cが一番近い https://www.merriam-webster.com/dictionary/cut
850 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:46:35.04 ID:I5dHg2CT0.net] Cut a Release Candidate はリリース候補として何かのリビジョンを切り出すんだよ 分岐のイメージは無い リリースしたものがその後育ったら困る
851 名前:デフォルトの名無しさん mailto:sage [2025/03/06(木) 23:50:52.31 ID:I5dHg2CT0.net] 3-cの例文の チームから切り離すとか、群れから切り離すのも、明確に分離している 分離と分岐は全然違う
852 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 00:34:50.26 ID:CROu0DDs0.net] ブランチを作る目的は互いの変更が影響しあわない分離された開発ラインを仮想的に作ること cutという単語が使われるのは分岐よりも分離に主眼があるから
853 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 01:44:12.43 ID:IYsfuX5M0.net] 枝道に逸れてサボってるお前らの給料をcutしよう
854 名前:デフォルトの名無しさん [2025/03/07(金) 02:22:26.83 ID:DC3oMiFw0.net] >>829 日本語訳がおかしい。切るではなく分けるという意味。
855 名前:デフォルトの名無しさん [2025/03/07(金) 02:25:08.03 ID:DC3oMiFw0.net] >>835 枝分かれという意味だけど、枝分かれしたものが本流に合流するから自然言語の言葉の選択に失敗しただけ。
856 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 06:09:46.75 ID:XXR0/Q3A0.net] 日本語訳ではなく元からおかしいのだろう 日本語の「課金」みたいな間違った使い方が定着しちゃうのはどこの言語でもある マニュアルとかには登場せずに口語とかで使われる用法 だからといって、直訳して間違う必要はない
857 名前:デフォルトの名無しさん [2025/03/07(金) 07:52:09.30 ID:nBHkq2vS0.net] git スレに於いては今後、枝をはらう意味のときは「剪る」「伐る」と書くこと。pythonスレで決めたからね。いいね。
858 名前:デフォルトの名無しさん [2025/03/07(金) 08:15:11.30 ID:i3TW8fQU0.net] 世間の慣習は変わらんぞ
859 名前:デフォルトの名無しさん [2025/03/07(金) 10:32:15.00 ID:DC3oMiFw0.net] >>843 料金の請求そのものを「課金」と呼んでいる会社があるからなあ
860 名前:デフォルトの名無しさん [2025/03/07(金) 11:24:48.94 ID:i3TW8fQU0.net] AAAのaccountingはアカウンティングとしか訳せない
861 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 14:17:00.73 ID:EmPVRGY00.net] >>826 あぁ トラウマ... きっつ
862 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 14:18:41.52 ID:NMHLxQXg0.net] >>826 別に削除しても問題ないやろ…
863 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 22:10:05.52 ID:qVctmwDB0.net] >>841 branchを動詞として使い、それだけで大本から流れを「分ける」という意味になる(分離はしていない) cutの場合はあくまで切り離してしまうので、分けるというより「切り分ける」(完全分離)という感じだな いずれにしても、「ブランチを切る」は誤解を招く言い方だと思う
864 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 22:50:11.11 ID:wbHOjF8U0.net] 特定のバージョンをリリースする場合はcutで合ってる 正しく使われたcutの例を見て、ブランチを作ることをcutって言うんだ、と ふわっと理解した層が誤用して定着してしまった、のだろう
865 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 22:57:11.00 ID:GKKg4qAw0.net] ブランチを切らないおじさんたち 知らなかったことは恥ずかしいことではないが その後のやり取りは非常に見苦しい 間違った独りよがりの解釈並べて やっぱり俺は正しかったと思い込んだところで何も変わらない 素直に「知らなかった」ことを認めて謝ろう そうすれば老害の進行を止められるよ
866 名前:デフォルトの名無しさん mailto:sage [2025/03/07(金) 23:09:46.40 ID:wbHOjF8U0.net] 老害なんて、そんな大層な地位にはいないよ そんなに煽てられると照れちゃうな
867 名前:デフォルトの名無しさん [2025/03/07(金) 23:17:57.73 ID:DC3oMiFw0.net] 英語の日本語訳でcutを考えるという謎の思考
868 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 10:47:12.14 ID:ygCjHTHI0.net] mktime() なんて伝統的なメソッドなのに、ここだけ何で英語なんだよ。マジメに訳せよ。 https://docs.python.org/ja/3.13/library/time.html#time.mktime
869 名前:デフォルトの名無しさん [2025/03/08(土) 10:47:40.67 ID:e8GOpGZkH.net] >>819 は切るって言っただけでcutなんて言ってないからな
870 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 12:40:07.76 ID:5sZkGuqi0.net] 日本のIT業界では昔から、フォルダなど何らかのコンテナを作成することを「切る」と言う習慣がある 汎用機の時代はフォルダ(に類するもの)やDBのテーブルなんかを作るときに静的にディスクの領域を割り当てるのが一般的だったから、そこから切ると言うようになったのだろう
871 名前:デフォルトの名無しさん [2025/03/08(土) 13:01:40.23 ID:6f56mNzS0.net] んなわけねーだろスケジュールを切るとか別に一般に使う動詞よ なにがIT業界ではだよw
872 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 13:16:35.89 ID:XaJvZebA0.net] 言わんけどなあ フォルダとかディレクトリは「掘る」だな 何かを発行することを切ると言うことはある 伝票を切るとか、歴史的には本当に切ってたのだろう
873 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 13:39:52.21 ID:ZW50ae5a0.net] >>857 それは用語がごっちゃになってるだろ パーティションとかクォーターなら切るだけど フォルダやディレクトリは作るだろ コマンドだってそうなんだし Power Macは概念違うかもしれんが あと掘るは探索だな
874 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 13:56:13.23 ID:i6kboqCH0.net] >>860 現代のファイルシステムのモデルではそうだが、年輩者でフォルダを切ると表現する人は実際わりといる 何でも事前に静的に割り当てていた時代の人間は、大きいところから部分を切り出すというメンタルモデルから脱せないでいるのだろう
875 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 14:03:50.31 ID:XaJvZebA0.net] パーティションは切る以外が思いつかないな 作成するよりもむしろ判り易い ディレクトリは無から生み出してるけど、 パーティションは有限のものを切り分けてるだけだし
876 名前:デフォルトの名無しさん [2025/03/08(土) 14:11:12.81 ID:6GjCdbD90.net] >>859 今でも伝票は切ってるやん レシートも伝票やで 来て来たレシート切ってるやん 今は切り込みは入ってるとかレジが切って出て来るけどさ
877 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 14:14:44.53 ID:XaJvZebA0.net] レシート切りますかと言ってくるコンビニ店員はおらん 実体が無くても切るという用語を使うという話
878 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 14:28:35.66 ID:5sZkGuqi0.net] 限られた可住面積と資源で生きてきた列島猿としては、 何かを新しく作るのはゼロから何かを生み出すのではなく常に大から小を切り出すことなんだろうな
879 名前:デフォルトの名無しさん (JP 0Heb-XXSS) mailto:sage [2025/03/08(土) 14:54:57.16 ID:bhzZOhlFH.net] パスを切る=ディレクトリを作るって意味で使うし ブランチを切るという言い方に何の違和感もない
880 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 15:22:00.93 ID:P4HKKOTE0.net] 22 (木を切って)つくる。 「今年はたびをも—・ってはかせい」 切るにはつくるって意味もあるようだ
881 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 15:22:48.97 ID:xQ5Fs9MV0.net] >>858 それは日時や数量などに限定をつけるという別の用法で辞書にも載ってるもの 区切られた専用の領域を新しく作るといった意味で使うのは自分の知る限りIT業界特有 「〇〇用に新しく□□を切る」 - ブランチを切る - ディレクトリを切る - パーティションを切る - サブネットを切る - VLANを切る - サブドメインを切る パスを切るやエイリアスを切るが これらと同じなのかは疑問の余地がある
882 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 15:24:08.77 ID:xQ5Fs9MV0.net] >>866 >パスを切る=ディレクトリを作る パスを切るのはディレクトリを作ることではなくない?
883 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 15:45:23.76 ID:jnuQA/jCd.net] パスやエイリアスを切るのは道を切り開くという意味じゃない? >>868 で挙がっている「割譲する」というニュアンスの切るとはまた違うと思う
884 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 15:57:23.70 ID:XaJvZebA0.net] PATHを切るは確かに言うな PATHを通すと同義の奴じゃないかな 作成するのはディレクトリやフォルダで、PATHはフルパスのことなので、 それ自体を作成したりはしない
885 名前:デフォルトの名無しさん [2025/03/08(土) 16:22:09.63 ID:6GjCdbD90.net] お前ら時代を考えろ コマンドライン時代だ /でディレクトリの区切りを示すやろ この事からパスを切るって言うんだよ
886 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 16:28:31.93 ID:kCgnTDtk0.net] Python勉強したかったらgithubのオープンソースと睨めっこしてこい。こんなとこでレスしても池沼mac信者しか沸かんぞ
887 名前:デフォルトの名無しさん [2025/03/08(土) 17:08:49.84 ID:ygCjHTHI0.net] 別れろ切れろはブランチの時に言う言葉、今のあたしにはいっそ kill と言っておくんなまし
888 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 17:37:17.94 ID:GgMgzR7UM.net] 言葉の意味を知らないで使い続けた慣用句の扱いだから ゼロックスしておいておじさんが直すとも思えない かと言って的は射るものですよ的な指摘も無粋 現場で仲良くやれればいいんじゃね? 意味はある程度通じているわけだし
889 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 17:38:34.41 ID:1IYLzVZ40.net] 何を発狂してんのよこのゴミは 「ブランチを切る」が現場で当たり前のように使われることを知らずに赤っ恥かいたから 正当化しようと暴れてるのか 見苦しい
890 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 17:53:41.60 ID:XaJvZebA0.net] どっちかというと、ローカルな用語が一般で通用しなくてショック受けてる、が正解だな これ方言だったの?的な
891 名前:デフォルトの名無しさん [2025/03/08(土) 20:56:09.68 ID:OhmQmpza0.net] すいません>>819 わかる人いたら教えてください gitスレでも聞いたんですが、CUI vs GUIみたいな糞どうでもいい話ばっかりしててあいつらはもう駄目です
892 名前: [] [ここ壊れてます]
893 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 22:42:06.31 ID:Qlttoejh0.net] >>878 gitのlogやreflogを確認するか Syncボタンを押した時に発行されるgitコマンドが表示されるパネルを開いてから もう一度試せばいいんじゃない? gitというより聞くならVSCodeスレじゃないか
894 名前:デフォルトの名無しさん mailto:sage [2025/03/08(土) 22:45:58.02 ID:Qlttoejh0.net] >>877 公式サイトにある日本語訳でもブランチを切るという表現が多々出てくる 日本語訳が出来た2009年当時からずっと変わらず
895 名前:デフォルトの名無しさん [2025/03/08(土) 23:43:37.51 ID:zOJ1gnEL0.net] >>857 作る、作成するでいいのに変な日本語を使い続けるのは老害
896 名前:デフォルトの名無しさん [2025/03/08(土) 23:44:49.47 ID:zOJ1gnEL0.net] >>880 樹木の枝を切るという世間一般のイメージに引きずられているだけ
897 名前:デフォルトの名無しさん mailto:sage [2025/03/09(日) 01:03:40.90 ID:T7+XzD7W0.net] 『「的を得る」が間違い』は間違い
898 名前:デフォルトの名無しさん mailto:sage [2025/03/09(日) 01:50:12.00 ID:HKmOZnoF0.net] >>878 その質問ChatGPTに聞いてみた?
899 名前:デフォルトの名無しさん [2025/03/09(日) 08:04:54.92 ID:mlSbYna30.net] >>884 pullしてpushって言われた >>879 確かに
900 名前:デフォルトの名無しさん mailto:sage [2025/03/09(日) 13:04:54.25 ID:Q8WEHnu70.net] gptにコード書いてもらうのが一番
901 名前:デフォルトの名無しさん (ワッチョイ ce01-CSyU) mailto:sage [2025/03/09(日) 16:02:37.71 ID:GDw1TKD+0.net] >>819 はこれかな? https://github.com/microsoft/vscode/issues/137686
902 名前:デフォルトの名無しさん [2025/03/09(日) 20:36:14.62 ID:0/t/zpFq0.net] 単純にVSCodeがorigin/masterにpushしてるだけだった 同じブランチでいくつかcommitして、sync changesボタンでたからマウスオーバーしたら、Push 4 commits to origin/masterってでたから まんまmasterブランチにpushしてるだけだった あとreflogにはVSCodeのSyncボタン押した時のログは残ってなかった
903 名前:デフォルトの名無しさん mailto:sage [2025/03/10(月) 12:17:45.33 ID:N4hnvL2z0.net] 連番のtxtファイルの中に物体名とそのXY座標値がスペース区切りで格納されてるんだけど for文でぐるぐる回して各物体ごとに前のファイル内に書かれてる座標値との差分を連続で出したい時ってどういうやり方するのがスマートだろうか pandas使ってDFに入れるのが早いのかなあ
904 名前:デフォルトの名無しさん mailto:sage [2025/03/10(月) 14:54:26.98 ID:A/G36wo60.net] それのやり方は知らんけど pandasよりpolarsの方が速いよ
905 名前:デフォルトの名無しさん mailto:sage [2025/03/10(月) 16:04:01.44 ID:dZmSaWL40.net] >>889 プログラム設計時に必要になる情報と一緒だけど 前提となる入力と出力の仕様をもう少し明確にしないと どういうやり方が適切なのかはわからないよ
906 名前:デフォルトの名無しさん mailto:sage [2025/03/10(月) 16:11:52.34 ID:9VCPJ0La0.net] >>888 ローカルとリモートで互いに足りない部分をpull/pushして結果を同じにしてるんじゃないの?
907 名前:デフォルトの名無しさん mailto:sage [2025/03/10(月) 18:45:12.16 ID:dZmSaWL40.net] git push origin hoge:masterのように リモートは問答無用でmaster指定してるってことだろうけど ローカルのhogeをリモートのmasterに直接pushするのが あまり一般的なワークフローではないんじゃない?
908 名前:デフォルトの名無しさん (ワッチョイ 1154-QsVm) mailto:sage [2025/03/10(月) 19:26:13.81 ID:d55rHlaZ0.net] pandasとかはファイルは一つでそこに行と列がたくさん、というデータを想定してるから、 ファイルがたくさんある時点で違う気がする 複数ファイルを一つのdfに結合する部分を自分で書けばpandasで処理できるだろうけど、 pandasで楽になりそうな処理にも思えない
909 名前:デフォルトの名無しさん (ワッチョイ aa8b-nrWv) mailto:sage [2025/03/10(月) 19:40:26.55 ID:pJkzwYQ20.net] 巨大なデータってオンメモリで終わるまでソワソワしながら待つの? それとも中間ファイル残しながら失敗したらそこから再開とか?
910 名前:デフォルトの名無しさん mailto:sage [2025/03/11(火) 08:25:30.10 ID:Jqy2ddi90.net] 場合によるよね。 やったことないけどw
911 名前:デフォルトの名無しさん mailto:sage [2025/03/11(火) 12:26:00.83 ID:jytsrQer0.net] >>895 スワップ使いまくるからオンメモリとは言えないかもしれないけど大きめのプログラムのフルコンパイルみたいなのはソワソワしながら待つ 途中まででコミットして再開可能なデータ処理は中断の可能性や再実行にかかる時間、プログラムの複雑化度合いなんかを加味して方針を決める
912 名前:デフォルトの名無しさん mailto:sage [2025/03/11(火) 19:24:18.03 ID:qtpkteRg0.net] makeみたいな仕組みにしとけば、失敗したところからやり直せる
913 名前:デフォルトの名無しさん mailto:sage [2025/03/11(火) 19:40:15.54 ID:8wwlWO3U0.net] 大規模な処理の場合はSparkみたいな分散処理フレームワークが障害時の途中からの復旧とかを担保する 一方で、アドホックな作業の耐障害性はあまり問題にされることはない いつも中途半端な実験ばかりで何一つ金になる成果を出さない自称データサイエンティストがノートブックで手元でチマチマやってる程度の作業なんて、 パーになったところでビジネス視点では何の影響もないからね
914 名前:デフォルトの名無しさん mailto:sage [2025/03/11(火) 20:32:11.49 ID:CtHRI6fk0.net] アドホックな作業?
915 名前:デフォルトの名無しさん [2025/03/12(水) 10:36:16.02 ID:QJkVGgVP0.net] ビルメン だから 業務効率化とかはできないけど趣味で Python 勉強中
916 名前:デフォルトの名無しさん [2025/03/12(水) 10:36:17.25 ID:QJkVGgVP0.net] ビルメン だから 業務効率化とかはできないけど趣味で Python 勉強中
917 名前:デフォルトの名無しさん [2025/03/12(水) 16:55:28.43 ID:mpqw2K/o0.net] 巡回ロボを作るとか。
918 名前:デフォルトの名無しさん [2025/03/12(水) 18:02:38.98 ID:J7cIovHRa.net] エレベーターの劣化チェックが良いな
919 名前:デフォルトの名無しさん (ワッチョイ a1f0-vVUT) [2025/03/12(水) 19:04:57.91 ID:CJgu15QK0.net] 巡回ロボいいね エレベーターのチェックって画像認識?
920 名前:デフォルトの名無しさん (ワッチョイ 411f-WTPe) mailto:sage [2025/03/12(水) 19:42:29.70 ID:6E1Ob3Gq0.net] boto3とrecognitionでできそうやな
921 名前:デフォルトの名無しさん mailto:sage [2025/03/13(木) 08:05:57.02 ID:CJt/ai2l0.net] そんなもん1年後くらいに汎用マルチモーダルAIに自然言語で指示するだけ
922 名前:デフォルトの名無しさん [2025/03/13(木) 10:46:41.91 ID:Tpg+NeNc0.net] どこまでプログラミング勉強すべきなんだろうな AIのコーディング能力かなり上がってるから がっつり自分でかけるようになる必要はないけど、まるごと書いてくれるわけではないし 少し修正しようって思ったら丸ごと書き直さないといけないから効率悪いんだよな 基本をさらっとやって、クラスだかモジュールだかの設計ができるようになればいいのかな
923 名前:デフォルトの名無しさん mailto:sage [2025/03/13(木) 12:01:16.03 ID:XK7vUpM4d.net] 画像解析は汎用AI化が出遅れてる分野なので、PyTorchとかでシコシコ自前でやりたい人にとってはラストリゾート とはいえ自動運転や医療画像みたいな絶対安全な分野を除けば向こう2年くらいの命だろうな
924 名前:デフォルトの名無しさん mailto:sage [2025/03/13(木) 12:54:57.01 ID:7qlVYF9v0.net] AIエディタを使いこなせるか これが最も重要
925 名前:デフォルトの名無しさん mailto:sage [2025/03/13(木) 17:05:12.30 ID:rucJuxY60.net] 耳コピの分野が出遅れてるんだよな ピアノ音源限定でノイズが無ければ、音の高さまでは割と正確に判断する でも小節の切れ目は判らないので楽譜化はできない 複数の楽器混在とかはまだ全然
926 名前:デフォルトの名無しさん [2025/03/17(月) 11:16:03.53 ID:3DJknzns0.net] pythonの文法って簡潔すぎてわかりにくいの俺だけ? for i in range(10) よりも for (i = 1; i < 10; i = i + 1) の方がわかりやすい C言語から始めたせいかもしれんが
927 名前:デフォルトの名無しさん [2025/03/17(月) 11:23:32.88 ID:3DJknzns0.net] for i in range(10) ←配列0〜9の左から1つずつiに代入 まあわかる if i in ng_numbers ←iが配列ng_numbersに入っていたら ???
928 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 11:30:36.89 ID:BQ9IDv+P0.net] >>913 英語で考えりゃ自然
929 名前:デフォルトの名無しさん [2025/03/17(月) 11:50:52.82 ID:3DJknzns0.net] >>914 そりゃ英語で考えればそうやがどういう処理しとんねんってなる
930 名前:デフォルトの名無しさん [2025/03/17(月) 12:21:38.78 ID:thUzMRxf0.net] pythonで分かり難いのは、なんてったって str.encode() と bytes.decode() だわ。 型変換を符号化復号化と称すのもどうかと思うが、バイト列を文字列にするのが何で復号なのか不思議でならない。
931 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 12:45:47.58 ID:PxAUP6H20.net] Pythonがどういう内部表現で文字列を表現してるかは一旦置いておいて 目に見える図形・グリフとしての文字の列をエンコードしてバイト列にするのがstr.encode() エンコードされた結果のバイト列を文字の列に戻すのがbytes.decode() わかりにくいのは確かだけど間違ってはいない
932 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 13:35:59.30 ID:tHr0fe9q0.net] rangeとか lenは使わない オブジェクトがあるんだから、そのものを渡そう
933 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 14:16:08.27 ID:P7s0k04b0.net] >>913 どゆこと? for i, ng in enumerate(ng_number) これのことではなくて? ng_numberの条件で飛ばすなら内包表記使って for x in [ng for ng in ng_number if ng_number[何か] == 何か] とかの話?
934 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 14:28:12.40 ID:WnkcGI4R0.net] 同じ”in”で使われ方も似てるけど文法的には別の”in” https://docs.python.org/3/reference/compound_stmts.html#for https://docs.python.org/3/reference/expressions.html#membership-test-operations
935 名前:デフォルトの名無しさん (ワッチョイ c179-lSw3) mailto:sage [2025/03/17(月) 15:27:05.92 ID:fqOs9Smn0.net] pythonのfor文は他の言語でいうところのforeach文だな シェルスクリプト(sh系)もそうで、これから入ったのでこちらのほうが馴染む
936 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 18:25:36.28 ID:3djl4ZDr0.net] CからC++とか進んだけど特にforで何とも思ったことないな
937 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 18:35:25.17 ID:wBqhLaFH0.net] 生成してもらってるから forの意味すら知らん
938 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 18:59:30.26 ID:aMO6RKr50.net] FOR X = 0 TO 9 (BASIC) for x := 0 to 9 (pascal) for (x = 0; x < 10; x++) (C) なんかどんどんforの意味からずれていく for x in range(10) これが正解
939 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 20:11:45.28 ID:+VsjTnZQ0.net] for i in range(10)で0~9のループってのがアホらしい 0から9と明示している言語が自然
940 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 20:35:11.55 ID:tHr0fe9q0.net] rangeは直前までのrangeオブジェクトを返す、と慣れればそれでいいじゃん
941 名前:デフォルトの名無しさん mailto:sage [2025/03/17(月) 20:42:27.97 ID:aMO6RKr50.net] range(1, 11) みたいに複雑になると、もうこれは for (x = 1; x < 11; x++) から数字を抽出したものになってくるけど、 普通は先頭は0なので本質的には要素数を表している 0から始まって当然の頭になれば自然に見える
942 名前:デフォルトの名無しさん [2025/03/17(月) 21:19:59.96 ID:gvomcM2e0.net] >>926 seq コマンドといつもごっちゃになってまう... >>> tuple(range(2)) (0, 1) >>> $ seq 2 1 2 $
943 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 01:35:19.58 ID:fgyGQdvg0.net] 個人的には他言語のforeach相当しかないのはかなり好きなポイントだな
944 名前:デフォルトの名無しさん [2025/03/18(火) 01:59:29.87 ID:4sQPnHny0.net] >>912 Pythonはこの書き方が便利だとか、わかりやすいなどとは思えない構文が多い
945 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 03:15:42.25 ID:SyDRbCg30.net] >>912 pythonのforは他言語の foreachに近い 書き方だからなあ で、foreachも foreach 要素 in 配列名 タイプの書き方の言語と foreach 配列名 as 要素 タイプの書き方の言語がある
946 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 03:23:10.83 ID:NvLfwtos0.net] perlはけっこう自然言語っぽい構文も追加で備えてるな
947 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 07:41:55.04 ID:9Q7xxzXC0.net] 繰り返し処理に for というキーワードを選んだのが間違いなのでは BASICが最初なのかな てっきりFORTRANだと思ってたけど、DOなんだよな DO X = 0, 9 それはそれで変だけど 一定範囲をスキャンするとか、要素を全部舐めるとか、 そういうニュアンスの単語が無かったんだろう
948 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 08:08:58.90 ID:dFh3Cu4yM.net] sweep
949 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 10:39:43.40 ID:mIJI9ibF0.net] #include
950 名前:デフォルトの名無しさん [2025/03/18(火) 11:03:33.56 ID:v2b6/sSk0.net] BASICなわけねーだろw その辺は全部ALGOLだよ なかったもクソもforには反復とかいくつずつみたいな意味が元々ある ていうかそもそもはドイツ語だったかなんかのはず
951 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 17:06:54.31 ID:XDcEae/z0.net] ALGOLは使ったことないなあ FORTRANで採用を見送られたのに、その後また復活したのか ステートメントが前置詞というのはやっぱり筋が悪いって
952 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 18:15:32.73 ID:IYkL8cYP0.net] 数式の英語での読み方から来てるから英語で数学を習った人にとっては何の違和感もない
953 名前:はず [] [ここ壊れてます]
954 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 22:08:58.63 ID:3MP8eql20.net] ALGOL(含む68)辺りにリアタイで手を出していたら、ミニコン使いやで。 インターフェースがトラ技別冊だった頃を知っているかと。 基準画像「某レナさん」のグラビアを見た事があるんじゃね?
955 名前:デフォルトの名無しさん mailto:sage [2025/03/18(火) 22:14:52.79 ID:GYPHuJM60.net] 島倉千代子を推してた口だな
956 名前:デフォルトの名無しさん [2025/03/19(水) 09:12:58.29 ID:Irgid5LDa.net] ALGOLはイスラムが語源 FORTRANはFormulaTranslator
957 名前:デフォルトの名無しさん mailto:sage [2025/03/19(水) 18:59:21.09 ID:uxWT9Crg0.net] alの部分は定冠詞だけどな
958 名前:デフォルトの名無しさん [2025/03/20(木) 08:55:27.85 ID:8365Cn8s0.net] def func(param): は def func(param: str): なのに、 def func(param='value'): が、 def func(param='value': str): でなく、 def func(param: str='value'): なのは、おかしいだろ。責任者のアホ。
959 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 10:13:00.87 ID:1M6YtTqp0.net] >>943 def func(param): が def func(param: str): だからこそ、 def func(param='value'): は、 def func(param='value': str): でなく、 def func(param: str='value'): 型ヒントは変数の型をチェックするために存在してる
960 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 10:16:14.83 ID:uFR0AtSp0.net] param: str='value' が param: と str='value' に分かれて見えてるんだな そうではなくて param: str というかたまりに 'value' を入れている
961 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 10:19:49.89 ID:uFR0AtSp0.net] コロンやらスペースを乗り越えた先に左辺値があることに脳パーサがバグるのは判る
962 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 10:33:23.18 ID:Il2FvhCIH.net] 型ヒントって必要? 使わない人が大半だと思うんでプライベートなコード以外には使わないでほしい 仕事で型ヒントが大量にちりばめられてるるコードのメンテナンスなんてやりたくない
963 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 11:00:47.02 ID:6xIUkw+E0.net] 逆では みんなの頭がつながっていないからこそ必要 IDEの支援ももらえるし
964 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 11:09:51.36 ID:uFR0AtSp0.net] 型は制約されてないし、だからこそのオブジェクト指向だけど、 実際は入る型なんか決まってるケースが大半なのでヒント止まりになる 正式なコメントの書き方
965 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 11:16:01.10 ID:+MvFUuxY0.net] 型ヒントないとやだわ
966 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 13:38:22.10 ID:Wa0651PK0.net] >>947 いらない そもそも高度な型を書けないから無意味 エディタで補完されるしそれで十分
967 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 13:39:45.20 ID:Wa0651PK0.net] 本当に型が欲しいならTypeScriptなりRust使うっての
968 名前:デフォルトの名無しさん (JP 0H8b-0naI) mailto:sage [2025/03/20(木) 14:29:39.20 ID:Il2FvhCIH.net] >>952 だよねえ 必須でもない型機能なんて混乱をもたらすだけだと思うわ この運営の迷走ぶりがPython凋落のきっかけになるんじゃないかと危惧している
969 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 14:55:26.24 ID:gYhPd4eL0.net] 自作コードは好みだろうけど、 公式ドキュメントは記述を対応させて欲しい。 > str.split(sep=None, maxsplit=-1) https://docs.python.org/ja/3.12/library/stdtypes.html#str.split なんて表記じゃ、sepに区切文字を入れるのか、複数の区切文字の配列を入れるのか分からない。 実行結果も、リストか返るのか、独自型が返るのか、或いは返さずに REPLY. 変数に結果をセットするのか分からない。 この例は split() なので想像つくのだけど、謎機能は入出力も謎で泣ける。
970 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 17:38:19.11 ID:IBTbkPm20.net] 型ヒントはコメントで書く 3.4(XPラスト)用をメンテしなくちゃならないので
971 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 18:15:32.43 ID:HvSgxtYp0.net] pyenv pipx poetryをos丸ごと捨ててuvに切り替えた poertyって依存のバージョン解釈がバグってることあったけど、uvはちゃんとしてるな アストラルがanacondaみたいにいきなり発狂しなきゃいいけど
972 名前:デフォルトの名無しさん mailto:sage [2025/03/20(木) 18:21:06.92 ID:uFR0AtSp0.net] いつかいいのができるまで、バージョン管理なしでやってる
973 名前:デフォルトの名無しさん [2025/03/22(土) 14:27:58.31 ID:U6/Lg1xxa.net] Rust の crates と Cargo は良さげだけど微妙 Python で真似するの流行り過ぎて心配
974 名前:デフォルトの名無しさん mailto:sage [2025/03/22(土) 19:43:37.05 ID:6JcU+3AE0.net] >>956 マジか もうanacondaから卒業すべきだな
975 名前:デフォルトの名無しさん mailto:sage [2025/03/22(土) 21:27:24.19 ID:dq8l+zNL0.net] pythonのバージョン管理よりも、コードの構成管理したい いろんなとこにコード書き散らすから、svnでもgitでも管理できない
976 名前:デフォルトの名無しさん mailto:sage [2025/03/22(土) 22:06:39.66 ID:+ZRnNyRr0.net] バージョン管理ツールで作成した環境の一覧がわかればいいの? ならpyenv-virtualenvとか zoxideやautojumpもいいかも
977 名前:デフォルトの名無しさん mailto:sage [2025/03/22(土) 22:19:14.19 ID:nPu00byz0.net] uvとruffにした ネットの情報古いのばかりでここにたどり着くのがすごい大変だった 素がpythonじゃないのでいきなりインストールして環境作れるのも楽 そのうち有料になっても金払っていいレベル
978 名前:デフォルトの名無しさん mailto:sage [2025/03/22(土) 22:20:25.56 ID:Y+iWZXI70.net] uvはlockまでちゃんとクロスプラットフォームなのがでかい どこまで信用できるかは分からないけど、今のところ問題はないので 新しく書いたやつを中心に徐々に移行してる
979 名前:デフォルトの名無しさん mailto:sage [2025/03/23(日) 22:26:19.29 ID:8QvyzI2Q0.net] >>736 馬場状態とか、、、数あるファクターのただの一つに過ぎないよ。 本気でやるならjvlinkで仕様書見てどんなデータがあるか眺めてみるといい。 どうせ挫折するだろうからあまり深く言わないけど、未来を予想するのと、ギャンブルで勝つのは二つ分析目標があると考えた方が良い。 勝率と回収率が逆相関になることがわかったらそこが沼の入り口だよ。 あすすめは、まず人気と回収率のデータを取ってみて、競馬は1番人気を買うと絶対に回収率がマイナスになり、最低人気を買っても同じ。これは何故かを考えることをお勧めするよ。
980 名前:デフォルトの名無しさん mailto:sage [2025/03/24(月) 08:15:13.03 ID:Kzm/5Ai30.net] ギャンブルにAIを使おうとするなんてばかにすることよな 働けよ
981 名前:デフォルトの名無しさん mailto:sage [2025/03/25(火) 15:35:13.74 ID:ICE7mE9e0.net] 自分は静的型検査はどっちかといえばある方がいいかな派(でも自分ではあんまりやっていない)なんだけど、typingモジュールの内容は盛り沢山すぎて、なかなか腰を据えて勉強する気になれないな。たぶん、型に一家言ある世界中の人が議論して仕様を作っているんだろうとは思うけど。 もう数年して仕様が落ち着いてきたら、たぶん解説本が出ると思うので、それを読んで勉強しよう。ロバストPytnonは結構面白かったので、その延長上で型アノテーションの説明に焦点を絞ったようなやつが出れば面白いと思う。
982 名前:デフォルトの名無しさん mailto:sage [2025/03/25(火) 21:47:04.49 ID:CXmZfdeW0.net] ハイパーモダンPython改訂版出してくれ
983 名前:デフォルトの名無しさん mailto:sage [2025/03/26(水) 04:22:01.80 ID:9+5RYHjhH.net] >>967 お前が作るんだよ オープンソースだから改変し放題
984 名前:デフォルトの名無しさん [2025/03/26(水) 10:28:10.74 ID:klkMmD4b0.net] >>967 本の Example Code らしいが、Commits on Jun 17, 2024 なので、2024年発刊したその本は最新版ちゃうか。 https://github.com/hypermodern-python/hmpt-code?tab=readme-ov-file#hypermodern-python-tooling---example-code
985 名前:デフォルトの名無しさん mailto:sage [2025/03/26(水) 11:14:52.23 ID:kQr2CXead.net] >>969 そうだよ だから新バージョン出してと 今のPythonの状況だと 毎年書いてくらいに思ってる 良い本だった
986 名前:デフォルトの名無しさん mailto:sage [2025/03/26(水) 11:21:03.47 ID:5p9B9np30.net] >>968 本のことだぞw
987 名前:デフォルトの名無しさん mailto:sage [2025/03/26(水) 11:26:56.84 ID:0cU+Eukb0.net] ハイパーモダンPythonってツール本でしょ。ツールって、やっぱりみんな使うものなの? 個人的にはツールのバージョンアップを追いかけたりするのがしんどそうなので、あまり使わない派なんだけど。
988 名前:デフォルトの名無しさん [2025/03/26(水) 11:48:23.78 ID:bFpgRqWb0.net] >>970 改訂稿は存在しないが、無い物ねだりしてみたというコトか。 原書より翻訳が古いて言ったのかとオモタ。
989 名前:デフォルトの名無しさん mailto:sage [2025/03/26(水) 14:17:55.91 ID:E7MgqOg/d.net] >>972 向こう数年はもうuvとruffで最終形と思っていいと思う
990 名前:デフォルトの名無しさん mailto:sage [2025/03/26(水) 14:45:58.77 ID:0cU+Eukb0.net] そうなんだ。皆が使っているド定番というところまで行来てるなら、ちょっと勉強してみるかという気になるかも。
991 名前:デフォルトの名無しさん (ワッチョイ 198c-GOYO) mailto:sage [2025/03/27(木) 05:19:00.87 ID:7jSR2TC60.net] 大昔に公式pythonをインストールした時は とにかくlibrary合わせが大変だよ! pipだとライブラリ名だけでなくバージョンも全部書かないと後で整合性無くなって環境壊れるよ と脅された それで長らくanaconda使ってたけど 登録必須だったりして面倒な要素がどんどん増えていた 稀に環境壊れるし それが公式Python + UV使ったらライブラリ名だけでバージョンの依存関係も合わせてくれる 動作も早い venvなどは今まで使ったことが無かったが、uvはちょっとコマンド覚えるのが厄介程度で それも検索したらすぐ出てくる程度 ryeも使ったことがないがuvの方が手間も掛からん numpy,scikit-learn,pandas,openpyxl,matplotlibなどなど問題なく入った anacondaに飲み込まれてた日々から解放か とにかくやっと軽いidleをPC上でさっと使えるようになったのが一番嬉しいw GTOコピペをドブに浸けたような文ですまん
992 名前:デフォルトの名無しさん mailto:sage [2025/03/27(木) 13:38:34.44 ID:2ADBZW+f0.net] uvというすでに存在してるライブラリの名前を使うセンスよ
993 名前:デフォルトの名無しさん mailto:sage [2025/03/27(木) 17:33:23.30 ID:7P69hYA/0.net] ググってもプロジェクトマネージャのuvしか出てこないし問題ないでしょ
994 名前:デフォルトの名無しさん mailto:sage [2025/03/27(木) 23:23:05.56 ID:VXWTe0Gq0.net] 紫外線?が何か?
995 名前:デフォルトの名無しさん mailto:sage [2025/03/27(木) 23:51:20.99 ID:k+F7YT9B0.net] libuv Web系じゃないとピンとこんかも
996 名前:デフォルトの名無しさん mailto:sage [2025/03/27(木) 23:59:47.36 ID:kS/FHi0p0.net] 完全に同じだったらpipが困るし
997 名前:デフォルトの名無しさん (ワッチョイ 0602-NzvG) mailto:sage [2025/03/28(金) 06:17:22.73 ID:IPcuak0N0.net] 何でもいいけどrubyのbundlerみたいにデファクトスタンダードになってほしい(´・ω・`)
998 名前:デフォルトの名無しさん mailto:sage [2025/04/01(火) 22:29:18.22 ID:9c1k08Vz0.net] 使ってみたけど、flaskは楽やな forルーブがそのままhtmlに書けて辞書を渡せる {{ % for entry in entries % }} { name: '{{ entry.name }}', age: {{ entry.age }},
999 名前:デフォルトの名無しさん mailto:sage [2025/04/02(水) 05:42:15.84 ID:DgG0AwHf0.net] 公式ドキュメントも読まず またどこから仕入れてきたんだその書き方
1000 名前:デフォルトの名無しさん [2025/04/02(水) 11:34:04.41 ID:k9Y5euIya.net] mustang
1001 名前:デフォルトの名無しさん mailto:sage [2025/04/02(水) 12:10:50.08 ID:k9Y5euIya.net] >>911 鳥との会話はやってるみたいだよ
1002 名前:デフォルトの名無しさん [2025/04/02(水) 22:26:38.63 ID:WwewqrQk0.net] コード書くのはMSX-Basic以来w 今は目的別に便利なライブラリをつないで 作るスタイルってのに驚きました。 便利なツールもあって進化を感じます。 なんかすごい事になっててw驚きs
1003 名前:デフォルトの名無しさん [2025/04/02(水) 23:29:11.29 ID:vIYRPSqy0.net] Excel VBAすらスルーしていた興味のなさは半端じゃねえなw
1004 名前:デフォルトの名無しさん mailto:Sage [2025/04/03(木) 05:44:20.01 ID:EdKQlRYK0.net] 厳密には違いますが、53のおじさんがワクワクする環境ってのは久々でした。必要に迫られて13年ぶりにPCと向き合ったので。
1005 名前:デフォルトの名無しさん mailto:sage [2025/04/03(木) 06:53:05.71 ID:X+wL63br0.net] BOMが付いてても大抵は何も起きないけど、 csvモジュールで読むとばっちりバグる なんで直さないんだ
1006 名前:デフォルトの名無しさん mailto:sage [2025/04/03(木) 11:00:23.64 ID:MyC4XyHf0.net] utf_8_sig 指定せずに問題起きてないのはたまたま 処理側のモジュールで個別対応するなんて愚の骨頂
1007 名前:デフォルトの名無しさん [2025/04/03(木) 11:26:57.33 ID:6V8WkUdO0.net] >>991 賢の骨頂は何ぞ? 自作モジュールはBOM非対応のまま、CSVファイルからBOMを除去?
1008 名前:デフォルトの名無しさん mailto:sage [2025/04/03(木) 14:16:06.10 ID:MyC4XyHf0.net] 入力でutf_8_sigを指定する
1009 名前:デフォルトの名無しさん [2025/04/03(木) 21:21:38.60 ID:fy3xRWQwa.net] ワクワクさせてよ チンチン
1010 名前:デフォルトの名無しさん [2025/04/03(木) 21:23:19.22 ID:fy3xRWQwa.net] >>992 BOM飛ばすpipe使うだけ pythonで描いても数秒だろ
1011 名前:992 [2025/04/03(木) 21:55:23.24 ID:touOSSe00.net] >>995 その pipe とは何を指したの。UNIXやDOSコマンドラインの "|" しかパっと思い浮かばない。 今のところ、>>993 が最良じゃないかと思う (オレは質問者でないので、僭越ながら) 。
1012 名前:デフォルトの名無しさん (ワッチョイ 7f0c-/YAI) [2025/04/03(木) 23:27:03.36 ID:yWhIQ9ik0.net] >>996 DOSじゃねえだろ
1013 名前:デフォルトの名無しさん (ワッチョイ 5fd7-TCdU) mailto:sage [2025/04/03(木) 23:29:32.03 ID:I/PZjZDo0.net] 普通、RTX-11だよねぇw
1014 名前:デフォルトの名無しさん mailto:sage [2025/04/03(木) 23:36:05.82 ID:F1+U/OXw0.net] pipe down
1015 名前:デフォルトの名無しさん mailto:sage [2025/04/04(金) 01:51:38.18 ID:UMpXJcmx0.net] 次スレ Pythonのお勉強 Part75 https://mevius.5ch.net/test/read.cgi/tech/1743698824/l50 建てましたが、次回から、985が次スレを建ててくだしあ。
1016 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 194日 15時間 37分 37秒
1017 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています