1 名前:デフォルトの名無しさん [2023/07/13(木) 18:48:41.56 ID:INS7SIu4.net] 当スレに★Python以外のプログラミング言語での回答類を書くべからず★ 派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。 「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。 このスレッドは「お勉強」スレのほうには書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。 ★エラーを解決したい場合★は、 表示されたエラーの全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、 実行環境(Pythonのバージョン・OSとIDEの種類およびバージョン)をシッカリ書くこと。 Pythonの★ソースコードをそのまま5ちゃんに貼るとインデントが崩れてチヌ★ 【【【複数の連続半角スペースはなにもなかったことにされる&タブは普通には入れられない】】】掲示板の仕様なので、 プログラム文は↓等の、いわゆるコードうp用サイトに貼ってこいください。 ttps://techiedelight.com/compiler/ Run Code機能あり。 ttp://ideone.com/ デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ◇Python公式◇ www.python.org/ ◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi 〇前スレ〇 【まず1嫁】くだすれPython(超初心者用) その58 https://mevius.5ch.net/test/read.cgi/tech/1662514433/ 次スレたては >>985 あたりが挑戦する。 ### END OF TEMPLATE ###
836 名前:デフォルトの名無しさん [2024/07/07(日) 23:45:08.47 ID:y7P/TwV5.net] pythonで取得したいのだからpythonの話でしょうよ どうせSS部分pythonのライブラリ使うんだから (ビットマップオブジェクトとかまでapi叩くんならアレだけど)
837 名前:デフォルトの名無しさん mailto:sage [2024/07/07(日) 23:57:01.73 ID:5gDGdFIi.net] 自分で書いたコード提示して聞いた方が回答つくと思うが
838 名前:デフォルトの名無しさん mailto:sage [2024/07/08(月) 00:05:50.31 ID:+/07puKi.net] Windowsのマルチモニタ環境では、各モニタの座標系が異なるため、座標のズレが発生することがあります。この問題を解決するためには、モニタの相対的な位置と解像度を考慮して座標を変換する必要があります
839 名前:デフォルトの名無しさん mailto:sage [2024/07/08(月) 00:06:20.59 ID:+/07puKi.net] 1. 各モニタの情報を取得する 2. 指定したウィンドウがどのモニタにあるかを特定する 3. ウィンドウの座標をそのモニタの座標系に変換する
840 名前:デフォルトの名無しさん [2024/07/08(月) 08:43:58.61 ID:XK4Xq7P1.net] ういんどうずはクソなので超めんどくせえんだわ おれはウインドウ内のみ欲しくて、その描画myW, myHが分かってる場合しか書いたことないけど rectたちから計算できるべ多分 DWMWA_EXTENDED_FRAME_BOUNDS = 9 r_rect = ctypes.wintypes.RECT() ctypes.windll.dwmapi.DwmGetWindowAttribute(hwnd, DWMWA〜, ctypes.byref(rect), ctypes.sizeof(rect)) _style = win32gui.GetWindowLong(hwnd, win32con.GWL_STYLE) if _style & win32con.WS_THICKFRAME: _win_border_size = win32api.GetSystemMetrics(win32con.SM_CYFRAME) else: _win_border_size = win32api.GetSystemMetrics(win32con.SM_CYBORDER) win_border_size *= 2 c_rect = win32gui.GetClientRect(hwnd) w_rect = win32gui.GetWindowRect(hwnd)
841 名前:デフォルトの名無しさん [2024/07/08(月) 08:45:47.33 ID:XK4Xq7P1.net] r_height = r_rect.bottom - r_rect.top c_width = c_rect[2] - c_rect[0] c_height = c_rect[3] - c_rect[1] w_width = w_rect[2] - w_rect[0] src_pos_x = (w_width - c_width) // 2 titlebar_height = r_height - c_height - win_border_size hwndDC = win32gui.GetWindowDC(hwnd) mfcDC = win32ui.CreateDCFromHandle(hwndDC) saveDC = mfcDC.CreateCompatibleDC() saveBitMap = win32ui.CreateBitmap() saveBitMap.CreateCompatibleBitmap(mfcDC, myW, myH) saveDC.SelectObject(saveBitMap) saveDC.BitBlt((0, 0), (myW, myH), mfcDC, (src_x, titlebar_height), win32con.SRCCOPY) bmpinfo = saveBitMap.GetInfo() bmpstr = saveBitMap.GetBitmapBits(True) im = Image.frombuffer('RGB', (bmpinfo['bmWidth'], bmpinfo['bmHeight']), bmpstr, 'raw', 'BGRX', 0, 1) win32gui.DeleteObject(saveBitMap.GetHandle()) saveDC.DeleteDC() mfcDC.DeleteDC() win32gui.ReleaseDC(hwnd, hwndDC) 高DPI対応でこれ入れてるとずれるからそれは知らん ctypes.windll.shcore.SetProcessDpiAwareness(1)
842 名前:デフォルトの名無しさん [2024/07/08(月) 08:48:31.66 ID:XK4Xq7P1.net] 訂正 saveDC.BitBlt((0, 0), (myW, myH), mfcDC, (src_pos_x, titlebar_height), win32con.SRCCOPY)
843 名前:デフォルトの名無しさん mailto:sage [2024/07/08(月) 21:09:08.76 ID:s8AzJdEo.net] >>829-831 マジで助かりました…上手くいきましたが コードが全然読めないので精進します
844 名前:デフォルトの名無しさん [2024/07/09(火) 01:02:05.27 ID:qs1jvts2.net] posXの計算式どういう理屈でそれなんだろう… 総当たりで試したのかな
845 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 17:53:08.61 ID:ycuYR4Xv.net] 質問失礼します VersionError: The client version 0.52.3492 is too old. Please update to the latest package on PyPi: と出てきました、調べたところThis library requires Python 3.8-3.12.と出てきたのですが 自分の使用バージョンはPython 3.10 pipも最新の24に更新済み、他にどこを直せばいいのでしょう
846 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 18:57:30.17 ID:JSIA10ur.net] すみませんVSCodeのシンタックスハイライトについて質問です シンタックスハイライトをPython仕様にしたいと思うのですがこんな感じで変えられますか? とりあえず今のままではメソッドなのかクラスなのか変数なのか全くわからないのでどうもできません https://i.imgur.com/l8UEuMt.png
847 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 19:06:47.56 ID:w695tFt+.net] >>834 PyPiが古いんだろ
848 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 19:15:18.18 ID:UDSzeDWm.net] とりあえずPython勉強してPython3エンジニア基礎試験に合格して、次の実践の勉強してるがつまらん 何か作った方が面白いが作りたいものもない
849 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 19:16:34.21 ID:ycuYR4Xv.net] >>836 pypiとpipって同じじゃないんですか 調べいても違いを説明する結果が出てきません
850 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 19:42:17.96 ID:w695tFt+.net] >>838 モジュールも全部最新なの? それでも出るなら特定の組み合わせで動かないとかじゃないのか
851 名前:デフォルトの名無しさん [2024/07/09(火) 20:05:31.88 ID:qs1jvts2.net] >>835 app = App() app.func() 変数 = クラス 関数 色がないと判断ができない、というのは論外 小文字、大文字、ドットアクセスで見ろ 強いて言えば foo.bar と書かれているときbarがメソッドかプロパティかわかりません という話ならまぁ… まあでもシンタックスハイライトってjsonで設定してあって弄れるから好きにやりな
852 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 20:15:12.34 ID:ycuYR4Xv.net] >>839 モジュール? まだ全然わからないけどモジュールですね!ちょっと調べてみます
853 名前:デフォルトの名無しさん [2024/07/09(火) 20:18:31.83 ID:qs1jvts2.net] AIとかをやろうとして、言われるがままに色んなものをガンガン入れてしまってる気がする
854 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 20:27:31.33 ID:KaCb5RY5.net] >>837 自力で作れると思われる範囲に制限しなけりゃ作りたいものはあるだろ? 今時プログラミングなんて自分で手を動かす必要ない AIに夢を語ってりゃそれっぽいものは簡単にできる
855 名前:デフォルトの名無しさん mailto:sage [2024/07/09(火) 23:33:54.51 ID:AsZE7u+u.net] >>835 Class が緑になってしまうけどこんな感じでいい? これでいいなら拡張機能の「Python」を入れればできるけども https://i.imgur.com/yfHsYvK.png あと VSCode の配色テーマを Dark(Visual Studio) にしていると 拡張機能のシンタックスハイライトが効かなくなるらしい https://qiita.com/ryutarom128/items/d52ec3db2d11b79599da
856 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 00:07:36.42 ID:3j7FzYnK.net] 色々調べた結果python側の問題とわかったので確認 python --version→python3.10 python3 --version→pythonとしかで来なく python3.10がちゃんとインストールされてるのかpython3.10 --versionを実行した結果、python3.10℃は、内部コマンドまたは 部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていませ ん。と出てきました とりあえずアンインストール後再インストールしてみますが 1月くらいまで何事もなく使えてたのにインストールされてませんみたいになることってよくあるのですか?
857 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 00:54:56.26 ID:B0lLeabB.net] 最新のpythonインストールしたんだろ それで昔の環境が壊れたとかでおかしくなる
858 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 01:07:23.88 ID:EF6Y7HgP.net] >>845 python3 --versionでPythonと表示されるのはwinの設定→アプリ→アプリ実行エイリアスがオンになってるから。これはMSストア版python用 公式版python3.10をインストールしてもpython3.10という実行ファイルが存在しないのは正常
859 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 01:59:30.87 ID:5rHX5/PL.net] 試行錯誤する前に拡張の説明や設定項目を確認しないのなんで
860 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 02:34:41.59 ID:3j7FzYnK.net] みなさんありがとうございます >>846 ID変わってたのでわかりにくかったのすみません>>834 です最新では無いと思います >>847 ということはpython側の問題ではないのですね再インストールしても無駄……? >>848 今回はModalのセットアップから初めてるのですがそこで躓いてしまって 恐らくpythonに問題があるのかなと
861 名前:デフォルトの名無しさん [2024/07/10(水) 03:33:20.73 ID:JKR4u2JY.net] modal要求バージョンより新しいpython入ってるせいで詰まってんじゃないの
862 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 08:41:03.90 ID:0/GvnarD.net] >>850 Modalの要求バージョンは3.8~3.12 私が使っているのは3.10なので大丈夫だとは思うんですがもう一度使おうとしたプログラムのエラーメッセージを確認してきます
863 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 15:30:21.08 ID:For1CkV4.net] だいぶ初心者だと思います ttk.Treeviewのselection_setに関する質問なんですが まず、やろうとしている事はビューアで Treeview1 サイトから取得してきたWebページ一覧 選ぶと情報ダウンロード Treeview2 ページの情報をダウンロードしたサイト一覧(実態としてはダウンロードフォルダにあるフォルダ一覧) Treeview3 Treeview2で選んだフォルダ内に保存されている個別のページ情報一覧(実態としてはフォルダ内テキスト一覧) で「Treeview2でフォルダを選び、Treeview3でファイルを選ぶと、ttk.Textに情報表示」はうまくいってます この時 Treeview1に<<TreeviewSelect>>をbindし、ダウンロードした後Treeview2の内容を消去&フォルダ一覧再取得&表示する関数などを仕込んでいます(後述) Treeview2も<<TreeviewSelect>>をbindし、Treeview3の内容を消去&選んだフォルダ(Treeview2)の中身を取得&(Treeview3に)表示する関数を仕込んでいます (Treeview3も<<TreeviewSelect>>をbindし、ttk.Textの内容を更新する関数を仕込んでいますが、多分今回の質問には関係ないです) 問題はTreeview1から選んだ時で、選んだ時にダウンロードするだけでなく、落としたものを自動的にttk.Textに表示しようとしています これもttk.Textの表示だけなら問題ないのですが、Treeview2とTreeview3も今ダウンロードした項目が自動的に選ばれた状態にしたいのですが、Treeview3だけうまくいきません エラーメッセージすら出る事なく、何も選択されません(Treeview2は正常に選択されています) 長いのでレス分けます
864 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 15:30:59.95 ID:For1CkV4.net] >>852 続き 原因はおそらくですが、Treeview1にbindした関数内でTreeview2の項目を選択した時、自動的にTreeview2にbindされた関数も呼び出されますが これの処理がTreeview1にbindした関数の後で実行されるせいで、最後にTreeview3がリフレッシュされているのだと思います Treeview1の処理中に他のTreeviewを選んだ時「Treeview1の処理中断→Treeview2の処理→Treeview1の処理再開」になると思い込んでコードを書いていたのですが たぶん実際には「Treeview1の処理完走後、トリガーされたTreeview2の処理」になっているのかなと思っています(テスト用のprintの表示順序などから推測) 最後にTreeview3もちゃんと選択されるようにするには、どうすればいいでしょうか? Treeview1の処理中、Treeview2を一時的にunbindも試してみましたが、確かにunbindして必要な処理を補完すればちゃんと動くので原因は間違ってなさそうですが 再bindをTreeview1の処理中にしてしまうと、処理後に結局トリガーしてしまって無意味でした
865 名前:デフォルトの名無しさん [2024/07/10(水) 17:05:01.94 ID:iit7nof0.net] ボタンは1回押したらロックするか ブロック機構入れないと 連打したり、別のボタン押したりしたときに収拾つかなくなるで たとえば bind関数内の最初に、if treeviewselected:returnみたいなの書いて排他動作にするとかさ
866 名前:デフォルトの名無しさん mailto:sage [2024/07/10(水) 18:37:27.41 ID:For1CkV4.net] >>854 丁度それをやってみて正常に動いたところでした、ありがとうございます やはりその辺の処理になるんですかね ロック機構、確かに要りますね 趣味で場当たり的に作ってると、そういう構造的なノウハウとかは中々身につかなさそうですね……
867 名前:デフォルトの名無しさん [2024/07/10(水) 21:14:08.65 ID:8aePid6X.net] GUIはGUI用のノウハウあるで、書きまくってたら身についていくよ ロジックと表示系分離するとかもそうだしさ
868 名前:デフォルトの名無しさん mailto:sage [2024/07/11(木) 00:14:02.11 ID:gnKs0VpL.net] pythonでpyenv pipx poetry使えるレンタルlinuxサーバ知らん??
869 名前:デフォルトの名無しさん mailto:sage [2024/07/12(金) 03:05:52.22 ID:Fv9K4MWW.net] whisperを使ってみようと思ったんですが、次のコードでどうあがいても FileNotFoundError: [WinError 2] 指定されたファイルが見つかりません。 import whisper with open("./test.txt", 'r', encoding='utf-8') as file: content = file.read() print(content) uri = "./test.mp3" model = whisper.load_model("small") result = model.transcribe(uri, verbose=True, fp16=False, language="ja") test.txtはちゃんと読み込まれて表示されるのに resultのところでどうしてもファイルが見つからないと言われます audio = whisper.load_audio(file=uri) をresultの前に噛ませたりしても、ここで見つからないと言われます 絶対パスにしてもwavとかoggとか試しても無駄だし、拡張子消してももちろん無駄です ファイルの位置を変えたり、全然違う場所の全然違う音声ファイルを読み込もうとしても無駄です pipしなおしてもPC再起動しても無駄です 一体何が悪いのでしょうか
870 名前:デフォルトの名無しさん [2024/07/12(金) 03:18:10.13 ID:6z6Lg9Zs.net] そもそもresult前に読んだパス認識してんの? path.existsみたいなのしなはれ
871 名前:デフォルトの名無しさん mailto:sage [2024/07/12(金) 03:55:38.40 ID:Fv9K4MWW.net] >>859 とりあえずこれを直前に挟んでみましたがTrueでした print(os.path.exists(uri)) ダミーにめちゃくちゃ入れたらもちろんFalseなので、result以外はちゃんと動いてるようなんですが
872 名前:デフォルトの名無しさん [2024/07/12(金) 04:14:19.09 ID:6z6Lg9Zs.net] ffmpeg関係は?
873 名前:デフォルトの名無しさん mailto:sage [2024/07/12(金) 05:06:05.29 ID:Fv9K4MWW.net] >>861 すみません、それでした 解決しました、ありがとう 雑に使おうとして、基本的なところが抜けてました
874 名前:デフォルトの名無しさん mailto:sage [2024/07/18(木) 21:35:07.90 ID:atiQW+Xs.net] いまtkinterでGUIをMVCで作ろうとしてるんだけど これウィジェット自身で完結する変数やメソッドはウィジェット側に書くわけじゃん するとあるウィジェットに関係する変数やメソッドが、viewとcontrollerに点在することになるけどそれでいいのか? 全部無理矢理controllerに押し込んだら、こんどcontrollerが肥大化するけど、それはそれでどうなんだという気もする
875 名前:デフォルトの名無しさん mailto:sage [2024/07/18(木) 23:22:50.39 ID:61oenaL1.net] >>863 MVCは死ぬほどバリエーションがあるのでこれといって何が正解かとはかない しかし成功しているモデルの一つであるiOSでのMVCを説明してみる まずコントローラはモデルとビューを保持する コントローラがユーザーからのイベントを受け取り対応するモデルのメソッドを呼ぶ モデルのメソッドが呼ばれ状態を変更する 完了後にコントローラへ通知する そしてコントローラは対応するビューを再描画する 正直古臭いがある程度成功しているアーキテクチャだ
876 名前:デフォルトの名無しさん mailto:sage [2024/07/19(金) 05:30:02.76 ID:QNeV9bba.net] vscodeでtomllib使って値読み込んでもpylanceが上手く型を認識してくれない(anyになる)んだけど tomlって型付きじゃなかったっけ? おま環かこれ??
877 名前:デフォルトの名無しさん [2024/07/19(金) 05:40:24.28 ID:+oFdaKCd.net] 石丸伸二さん取材の最前線 「取材不足」さんのYouTubeチャンネル https://youtube.com/@shuzaibusoku 「取材不足」さんのX(ツイッター) https://x.com/shuzaibusoku7 石丸伸二さんは天才ですね!
878 名前:デフォルトの名無しさん mailto:sage [2024/07/19(金) 06:02:53.03 ID:2drNjBF3.net] >>865 どんなデータ読むかわからんなら静的解析できない データの型が想定できるなら自前のエンティティクラスにいったん格納してみては? 健全にやるならバリデーションする
879 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 06:12:19.62 ID:rQPoAcvH.net] Pythonで組んだ自動処理はレンタルサーバー使ってる?
880 名前:デフォルトの名無しさん [2024/07/20(土) 17:56:48.97 ID:pd3T6vIK.net] >>868 日本語検定何級? レンタルサーバーを使っているかどうかが先に評価する条件だろ?
881 名前:デフォルトの名無しさん [2024/07/20(土) 17:58:02.44 ID:pd3T6vIK.net] >>865 バイナリーデータを扱うのに型が自動で決まる方が気持ち悪いだろ
882 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 18:30:49.82 ID:rQPoAcvH.net] >>869 スレタイの通りなんだけど、なんで煽ってるの?
883 名前:デフォルトの名無しさん [2024/07/20(土) 18:44:11.27 ID:pd3T6vIK.net] レンタルサーバーを使っているかどうかはここで聞かなくてもいいだろうに 初心者だとレンタルサーバーの存在を知らない可能性が高いと思うけどな。 レンタルサーバーならわざわざPythonを使う必要もない。
884 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 18:56:40.19 ID:g11axyeV.net] >>870 でもパーサーは内部的にpython用の型に変換してるんだから、それを静的型チェッカに伝えるだけじゃねーのかなと思わなくはない
885 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 19:10:13.69 ID:4S4L7THY.net] パーサーあるいはバリデータを通して特定の型に適合することがわかったらその型にキャストしてやればいい。
886 名前:デフォルトの名無しさん [2024/07/20(土) 19:39:36.45 ID:pd3T6vIK.net] それだとデータがおかしくない前提の設計になる
887 名前:デフォルトの名無しさん [2024/07/20(土) 19:43:13.82 ID:JfCCJ2ok.net] setdefaultencoding()
888 名前:デフォルトの名無しさん [2024/07/20(土) 19:43:43.52 ID:pd3T6vIK.net] 彼は単にTOML形式のファイルが間違っているだけの話をしているのかもしれない。
889 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 19:44:44.42 ID:g11axyeV.net] >>875 データおかしかったらパースエラーでしょ 型チェッカが作動する以前で終わる話やん
890 名前:デフォルトの名無しさん [2024/07/20(土) 19:45:09.15 ID:pd3T6vIK.net] 決められたフォーマットでない設定ファイルを読み込んだときの動作は処理を止めるのが正しい実装。
891 名前:デフォルトの名無しさん [2024/07/20(土) 19:46:17.83 ID:pd3T6vIK.net] >>878 本人の勘違いだろう 設定が間違っているのをライブラリの問題にしていると思われる
892 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 19:49:49.46 ID:g11axyeV.net] >>880 読解力ゼロ民なん? 質問は、型チェッカーが型情報読めません で それはそれで合ってる(型チェッカーは認知しないから)が回答で 付随して、パーサーは内部で型確定してるんだから、型チェッカーがそれ読みゃいいのにね って言ってるだけだろ
893 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 20:09:38.66 ID:4S4L7THY.net] >>875 データがおかしくなければ問題なし、おかしければNG。それのどこに問題が?
894 名前:デフォルトの名無しさん [2024/07/20(土) 20:10:26.26 ID:pd3T6vIK.net] 彼は想定どおりのデータ型にならないと言っている
895 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 20:56
] [ここ壊れてます]
896 名前::22.33 ID:4S4L7THY.net mailto: >>883 ? だから型チェックしたうえでキャストすればいいと言っているわけだが。 [] [ここ壊れてます]
897 名前:デフォルトの名無しさん [2024/07/20(土) 23:13:59.91 ID:3JBVPj+L.net] 初心者に何一つ解決法を提示できない、あおる専門職が、また暴れているのか。
898 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 23:38:05.16 ID:nWXlJ8rt.net] >>881 >付随して、パーサーは内部で型確定してるんだから、型チェッカーがそれ読みゃいいのにね って言ってるだけだろ 静的型チェッカーにプログラムを実行して外部TOMLファイルを読み込んでパースしてから型チェックしろと? 頭おかしくね?
899 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 23:43:19.64 ID:n5damDMV.net] 初心者です Windows とmacで全く同じ環境を用意してもvscodeでjupyter が使えるのはmacだけで困っています。 ryeで環境構築していてpythonのバージョンは3.7〜3.12それぞれで試しました ライブラリはrye add jupyterのみ Vscodeの拡張機能はpythonとjupyter Macでは問題ないですが、Windowsでipynbを実行すると”connecting to kernel“から進みません pyファイルで#%%を用いても同じです カーネルの指定はしています 今はしょうがないのでwindowsではjupyterlabを起動して使っています ライブラリのバージョンとwindowsの相性が悪いんですかね…?
900 名前:デフォルトの名無しさん mailto:sage [2024/07/20(土) 23:54:41.64 ID:NXGRRfPo.net] 初心者でryeなんて非標準なツールつかうから切り分けできなくなる
901 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 00:10:32.64 ID:H6hpsSWg.net] >>869 え?これ何?低学歴知的障害朝鮮人?
902 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 00:19:47.32 ID:7gp2nlNY.net] さすがにこの自演は恥ずかしいw
903 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 04:12:49.88 ID:6bp7hRiy.net] >>888 解決しました!分かりやすい解説ありがとうございます!
904 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 10:56:10.38 ID:6bp7hRiy.net] 質問しておいて解決しましたとだけ書くのも失礼なので… pyvenv.cfgの中の指定のpython を変えたら解決しました。 つまり標準のpythonをryeのものにしているのがwindowsのjupyterではよくないようです。 仮想環境でごちゃごちゃやった感じではセキュリティの問題っぽいのでそっちいじればなんとかなりそうですが… 結局macではvscodeを使ってwinではjupyterlab使うことにしました お騒がせしました
905 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 14:59:38.69 ID:AhhCkcZ5.net] なんかお前一生環境構築してない?
906 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 15:04:29.78 ID:AhhCkcZ5.net] プログラミングできないやつに限って環境だけ作って満足するやつはスゲー多いんだよな 結局何も書けないからやることがないというw
907 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 15:13:06.46 ID:6bp7hRiy.net] >>894 FDTD法やってます! 今は高速化目指してます💪
908 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 15:52:43.89 ID:AhhCkcZ5.net] >>895 そんなんやってる奴が初心者なんだ?
909 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 16:38:54.61 ID:XlsTZxiY.net] >>896 はい!
910 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 16:43:16.67 ID:AhhCkcZ5.net] >>897 フフッ
911 名前:デフォルトの名無しさん [2024/07/21(日) 17:57:12.44 ID:XSmlH7W8.net] 質問にも答えず初心者を煽ってさらには返り討ちに合うスレですか…
912 名前:デフォルトの名無しさん mailto:sage [2024/07/21(日) 18:03:02.20 ID:AhhCkcZ5.net] >>899 だいぶ効いてるみたいだな
913 名前:デフォルトの名無しさん [2024/07/23(火) 01:22:30.39 ID:Rfg4Mjqa.net] >>893-894 昔の自称emacs使いにもそういうのがいたで
914 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 07:36:07.88 ID:Uu3M5VDt.net] 今はVSCode使いがそれだな 何でもVSCodeでやろうとして詰んでは暴れまくる メモ帳でいいんだよPythonなんて
915 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 07:43:39.89 ID:x/ET989s.net] vscodeの拡張はelispみたく手軽に始められないから秩序は保たれてる印象
916 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 09:37:49.97 ID:HQr1sgjB.net] >>902 極論それ 環境云々よりまずコードをかけることが大事だからな 環境など後からいくらでも凝ればいい
917 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 09:47:38.48 ID:n9YZQASq.net] まず書けるようになるためにはデバッガの有無は大きいと思うが
918 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 09:53:14.67 ID:HQr1sgjB.net] 最近はjupyterとか使えば対話的にプログラム書けるしpythonに限って言えば昔ほどデバッガは重要ではないと思うけどな
919 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 10:16:25.92 ID:x/ET989s.net] Jupyterデバッガ搭載してるけど定義のちがい?
920 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 10:16:33.81 ID:n9YZQASq.net] 環境などどうでも良いのにいきなりjupyterなの?
921 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 10:47:56.05 ID:HQr1sgjB.net] 環境がどうでも良いのとjupyter使うのが便利とは直行する話 環境構築にこだわってドツボにハマるならメモ帳でも良いって意味だよ 文脈ちゃんと理解しような
922 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 11:02:25.16 ID:n9YZQASq.net] 文脈云々言うなら直交ぐらいちゃんと変換しような
923 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 11:52:19.83 ID:aX/s2yiT.net] デスクトップアプリを作ってexe化して配布しても、FirefoxとChromeで「ウイルスかマルウェア」と断定されて、ダウンロードがブロックされてしまうので、がっかりだよ… またそのブロック解除の方法が難しくて、まず素人はダウンロードできないし… Edgeは賢いんだよな ちゃんと検査してはダウンロードさせてくれる
924 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 12:00:04.69 ID:lokdiXpj.net] 誰が作ったかわからない実行ファイルなんて実行すべきでないから
925 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 12:00:56.55 ID:HQr1sgjB.net] 今時生exeダウンロードして実行しろはない Macであってもよほど信頼があるもの以外は入れない
926 名前:デフォルトの名無しさん [2024/07/23(火) 15:47:22.98 ID:b7ip8NcQ.net] >>911 .zipとかに梱包した .exeでなく、赤裸々な .exeで配布したという意味? なぜ?
927 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 15:49:15.49 ID:xnSNk6y3.net] zipで包まれてても嫌だけどな
928 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 16:25:49.95 ID:x/ET989s.net] exe単体では嫌だからWebサイトで配布するんじゃないの? Steamのインストーラもexeだよ パッケージ化されてても導入するのは結局exeだし
929 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 17:12:12.55 ID:aX/s2yiT.net] >>914 zipにしてるよ それがブロックされる
930 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 17:22:15.64 ID:xnSNk6y3.net] >>916 個人が作ったよくわからないプログラムパッケージをネイティブにインストールなんかしないってことね
931 名前:デフォルトの名無しさん [2024/07/23(火) 17:37:17.95 ID:TPPfHQM2.net] >>914 ZIP圧縮は暗号化されているものがあるから、ZIP圧縮の方が嫌われるように変化した。
932 名前:デフォルトの名無しさん [2024/07/23(火) 18:14:35.00 ID:b7ip8NcQ.net] >>917 ここPythonスレなので、exe化したPythonプログラムの話か。今気付いた。 ライブラリを含んでいるからウィルス認定されて当然という話をよく聞く。 別に exe化せんで、スクリプトで配布すりゃいいのでは。
933 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 18:37:50.57 ID:nRtnWzRV.net] サンドボックスで振る舞いを確かめれば済む話じゃないのか?
934 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 19:18:10.39 ID:TZI+ZhOX.net] 自己解凍書庫の出番か
935 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 19:39:18.76 ID:xnSNk6y3.net] あれも脆弱性の塊です
936 名前:デフォルトの名無しさん [2024/07/23(火) 19:43:52.63 ID:ZPmy+vgF.net] UPX
937 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 19:50:49.70 ID:aX/s2yiT.net] >>920 pythonなんて使えない素人に配布してるので
938 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 22:34:55.62 ID:Q9OV7LqX.net] コード署名なんて使えない素人が配布してるのでw
939 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 23:08:59.22 ID:r/ZR0qO4.net] こんだけマルウェアやらランサムウェアが問題になってるのにいまだに何の保証もないexeを実行可能にしているマイクロソフトは反社会勢力と言っても過言ではない この問題を長年放置してるのは狂ってる
940 名前:デフォルトの名無しさん mailto:sage [2024/07/23(火) 23:12:04.08 ID:RTFcCOtn.net] Chromeはzipの中身も見てるみたいだけどFirefoxもとなるとGoogle Safe Browsingのダウンロードのブロックリストにドメイン載っちゃってる可能性
941 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 03:59:46.12 ID:/7/ZxMEj.net] >>927 ストアで縛ろうとしたら猛反対 俺のパソコンなのに何しやがるんてなるよ 業務ならポリシーで制限できるから落とし所
942 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 11:24:37.52 ID:zc84AtQt.net] この板で見かけるpythonアプリをexe化して配布しようとしてる人って例外なく技術者としてのレベルが低いんだよね しかもその自覚がなく他人のせいにするからタチが悪い
943 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 11:29:14.65 ID:xsNragSm.net] 超初心者用スレでレベルが低いとか言われても
944 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 11:39:51.52 ID:pCtKanLE.net] >>930 しょうがない面あるよ 現場でのちょっとした業務効率化ツールにいちいち開発予算取れないし Pythonやライブラリのインストールして回るのは面倒だし exe一つ配布で済むならそれに越したことはない
945 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 11:45:11.42 ID:UohJ1bhL.net] デスクトップアプリでも指示したファイル以外開けないような権限の厳しい仕組みを作るべきだった
946 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 12:02:23.84 ID:BVC0yZgs.net] やっぱWebアプリが楽 pyscriptの発展に期待
947 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 12:42:15.38 ID:oMWZGWxK.net] >>932 それはアプリの配布ポリシーも配布方法も確立できてないリテラシーが超低い会社に限られた話 >>926 が揶揄してるように素人に配布してるのが問題じゃなくて素人がexeを配布しようとしてるのが問題なんだよ
948 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 14:17:03.29 ID:y0qkp9N5.net] >>933 Macは野良の実行ファイル起動できないからな せめてこれくらいはやれよって思う
949 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 14:55:30.46 ID:uBykzA+Z.net] exeを自由に配布しようとしても、ブロックされてダウンロードされないし売れないしで、素人でも最初からMicrosoft sStore、App Store、android Play Storeで配布する方針でアプリ開発するべきなんだね
950 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 15:11:26.53 ID:gQy7oTdL.net] >>937 python公式が配布してるexeのダウンロードかブロックされたことある?
951 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 15:17:26.99 ID:uBykzA+Z.net] >>938 python本体くらいしか無いけど、ブロックはされなかった
952 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 17:01:13.31 ID:KGoIVoV/.net] >>939 exeを自由に配布しようとしてもブロックされてダウンロードされないという認識が間違ってるってことだよ
953 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 17:34:45.81 ID:Qm23Mb5z.net] いろいろ出来てなんぼのPCであれはだめこれはだめと言っていたら、 なんのためのPCだかわからないことになる パターナリスティックでおせっかいなシステムはPCにはそぐわないし、 スマホみたいにがんじがらめなのは勘弁してくれ
954 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 19:22:40.43 ID:uBykzA+Z.net] Microsoft Storeで販売してみるわ 日本語と英語で。 500円だけど、何事も挑戦
955 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 19:53:24.43 ID:aZhJNMHQ.net] >>942 いきなり500円で買うやつおらんぞ まずは機能減らして無料で出せよ
956 名前:デフォルトの名無しさん mailto:sage [2024/07/24(水) 23:33:56.14 ID:uBykzA+Z.net] >>943 いや、他所ではたまに売れてるんですよ 1週間に数本とか exeファイルでは無いけどコード (記事って書いてあるけど文章では無いです) https://i.imgur.com/9VMM8xV.jpeg exeファイルを売りたくなったので、Microsoft Storeにしようかと。 他所だとブロックされてしまうので
957 名前:デフォルトの名無しさん [2024/07/25(木) 17:55:43.14 ID:d36Rq1nw.net] EXEファイルは間違って実行してしまうことがあるから避けられているのになあ
958 名前:デフォルトの名無しさん [2024/07/26(金) 08:22:41.37 ID:3aGNttVJ.net] >>945 スクリプト・ファイルでも間違えて実行することはあると思うが、 EXEファイル特有の間違いってあるの?
959 名前:デフォルトの名無しさん mailto:sage [2024/07/26(金) 09:07:36.47 ID:GoMxbApo.net] 通常のスクリプトファイルはダブルクリックで実行してしまうことはないだろ
960 名前:デフォルトの名無しさん [2024/07/26(金) 10:16:15.53 ID:3aGNttVJ.net] >>947 MS-Windows をよく知らんのだけど、 拡張子 .py とかのテキストファイルを、 python something.py などと実行してしまうもんじゃないの?
961 名前:デフォルトの名無しさん mailto:sage [2024/07/26(金) 10:19:30.49 ID:8tpKdrFX.net] >>947 無知すぎるやろw
962 名前:デフォルトの名無しさん mailto:sage [2024/07/26(金) 10:28:35.30 ID:RKHjG1e0.net] バッチファイルなら起動するで あと関連付けされてれば起動する
963 名前:デフォルトの名無しさん mailto:sage [2024/07/26(金) 13:49:56.51 ID:ymUuyp6y.net] スレタイが何度見てもくすだれにしか見えない
964 名前:デフォルトの名無しさん mailto:sage [2024/07/26(金) 15:36:14.52 ID:OCCNk7Vb.net] スレイタが何度見てもくだれすにしか見なえい
965 名前:デフォルトの名無しさん [2024/07/26(金) 20:25:41.82 ID:JylNHC7t.net] >>948 取り返しがつかないことを平気でするから、仕事だったら追放されるぞ。
966 名前:デフォルトの名無しさん [2024/07/26(金) 20:27:18.02 ID:JylNHC7t.net] >>948 のようにWindowsをMS-Windowsと書くのはジジイ確定
967 名前:デフォルトの名無しさん [2024/07/26(金) 20:58:29.00 ID:3aGNttVJ.net] >>953 MS-Windows をよく知らんのだけど、 関連付けって、取り返しがつかず、仕事だったら追放されるくらいオオゴトなのか。タイヘンなんだな。MS-Windows を使う仕事でなくて良かったよ。
968 名前:デフォルトの名無しさん [2024/07/26(金) 21:10:48.91 ID:JylNHC7t.net] > python something.py ↑これを実行すると言っているのは自分だろうに
969 名前:デフォルトの名無しさん [2024/07/26(金) 22:30:59.89 ID:3aGNttVJ.net] >>956 拡張子 .py とかのテキストファイルを、 python something.py などと実行してしまう、そんな仕組みを、「関連付け」と呼んでいるのと違うの? よく知らんのだけど。
970 名前:デフォルトの名無しさん [2024/07/26(金) 22:53:18.79 ID:JylNHC7t.net] >>957 自分がそう書いているんだぜ?
971 名前:デフォルトの名無しさん [2024/07/26(金) 22:54:17.60 ID:JylNHC7t.net] >>957 946 デフォルトの名無しさん 2024/07/26(金) 08:22:41.37 ID:3aGNttVJ >>945 スクリプト・ファイルでも間違えて実行することはあると思うが、 EXEファイル特有の間違いってあるの?
972 名前:デフォルトの名無しさん [2024/07/26(金) 22:55:33.33 ID:JylNHC7t.net] どんなOSだろうと実行してから「実行しますか?」なんて聞いてくるコマンドが普通なのか? 言っていることの意味がわからない。
973 名前:デフォルトの名無しさん mailto:sage [2024/07/26(金) 23:03:13.17 ID:GM2OWqhD.net] 無知な>>947 が暴れてますな ジジイのほうがまだまとも
974 名前:デフォルトの名無しさん [2024/07/27(土) 02:00:40.08 ID:Frk3MPuk.net] >>958 ,960 何を言っているのか全然解らん。 系統立てて話してくれないだろうか。
975 名前:デフォルトの名無しさん mailto:sage [2024/07/27(土) 11:13:05.30 ID:qPRWWcgY.net] def a(arg1)のarg1は'normal,'auto','single'が選択肢としてありって、呼び出し元で引数の選択肢にインテリセンスが効くようにする方法ってありますか?
976 名前:デフォルトの名無しさん mailto:sage [2024/07/27(土) 11:18:09.30 ID:zo9+JWCR.net] そんな質問はchatgptに聞け
977 名前:デフォルトの名無しさん mailto:sage [2024/07/27(土) 11:30:57.89 ID:MJBjTLYo.net] Windows環境でPythonをインストールすると.pyなどの各種ファイルは Python Launcher(py.exe)に関連付けされてダブルクリックでプログラムが実行されるようになってるよ .batや.cmdのように標準で実行されるものもあれば.ps1のように標準ではブロックされるものもある ただ.batや.cmdは.exeと違って一般ユーザーは使わないから設定でブロックしやすい .exeもいろんな条件でブロックすることは可能だけど利便性がかなり落ちるのでバランスが難しい
978 名前:デフォルトの名無しさん mailto:sage [2024/07/27(土) 11:35:07.21 ID:VipTCpXk.net] >>963 enum
979 名前:デフォルトの名無しさん mailto:sage [2024/07/27(土) 12:02:44.95 ID:VipTCpXk.net] Literalがあったわ
980 名前:デフォルトの名無しさん mailto:sage [2024/07/27(土) 20:42:42.63 ID:cmTVxjYb.net] >>965 Anacondaから入れてるから初耳 勿論、勝手に実行はされない
981 名前:デフォルトの名無しさん mailto:sage [2024/07/28(日) 15:34:57.49 ID:v6kdbv5j.net] .pyダブルクリックでテキストエディタが起動してソース編集の方が有難い .py実行したいときはコマンドプロンプトやエディタの方から実行出来れば充分
982 名前:デフォルトの名無しさん [2024/07/28(日) 20:18:24.27 ID:AOLFr8T9.net] >>969 そんなのは設定だろ python界隈はこういう馬鹿が増えた
983 名前:デフォルトの名無しさん [2024/07/28(日) 20:24:40.17 ID:nQJ65Sob.net] 個々人の嗜好の話題ではない。
984 名前:デフォルトの名無しさん [2024/07/30(火) 17:32:38.17 ID:PmWSmSbC.net] 1 gchar 2001/03/27(火) 13:30 どうしょうもなく、くだらなくて恐縮ですが、 ギコ猫アプレットを作りたいと思います。 gikocat.20m.com/ まあ、感想なぞ書いて下さい。
985 名前:デフォルトの名無しさん mailto:sage [2024/07/30(火) 19:00:55.75 ID:xxzULaUh.net] >>972 多分ウイルスサイト
986 名前:デフォルトの名無しさん mailto:sage [2024/08/11(日) 00:05:49.00 ID:rz8PuyH+.net] しかし2001年アプレットとはまた…
987 名前:デフォルトの名無しさん [2024/08/22(木) 10:19:36.95 ID:IKT838Oo.net] 死壊死壊
988 名前:デフォルトの名無しさん mailto:sage [2024/08/23(金) 05:46:44.19 ID:rXpsCAVX.net] asyncによる非同期処理を実装する場合、非同期にしたい呼び出される関数はasync defとawaitに書かなければならない認識であっていますか? 既存コードにCで書かれた通信処理dllへのラッパー関数があるので、dll呼び出し部まで書き直すか追加するのが手間なので良い手法があればと思いました。
989 名前:デフォルトの名無しさん [2024/08/23(金) 14:35:19.98 ID:TJ+3Kp9a.net] wrapperのwrapperを描こう
990 名前:デフォルトの名無しさん mailto:sage [2024/08/23(金) 17:32:10.11 ID:2MxBs/jY.net] Yo~!
991 名前:デフォルトの名無しさん [2024/08/26(月) 13:05:01.33 ID:+6LxARHT.net] 宣伝じゃないですが 尼で損する→/dp/4297142856 書評は良いと思った >なぜコードが間違っていないのにレビューで重箱の隅のような指摘を受けるのかが理解できるようになります。
992 名前:デフォルトの名無しさん mailto:sage [2024/08/26(月) 15:22:01.32 ID:xgRNJuaz.net] サプーか
993 名前:デフォルトの名無しさん [2024/08/26(月) 19:53:41.84 ID:FhzwHLyM.net] レビューで重箱の隅のような指摘を受けたことがあるんだろうね
994 名前:デフォルトの名無しさん mailto:sage [2024/08/26(月) 20:38:35.96 ID:TfC/Wz7r.net] 横からだけど おまえは完璧なコードを書きすぎる と言われた事がある・・・ 難しい部分を任されたことが無いってのもあるけど その部分の動画もあるのかな
995 名前:デフォルトの名無しさん mailto:sage [2024/08/26(月) 20:59:37.19 ID:694qjtkr.net] レビューがめっちゃ桜臭いな 星3以下だと一気に評判落ちるので発売直後の星5が大事
996 名前:デフォルトの名無しさん [2024/08/27(火) 00:42:37.95 ID:jPnUMQmz.net] 設計通りに実装していないやつが多すぎる
997 名前:デフォルトの名無しさん [2024/08/27(火) 14:12:58.86 ID:oHcafaf7.net] これ教えてくらはい 解く過程もお願いします https://i.imgur.com/AUcy6QG.jpeg
998 名前:デフォルトの名無しさん [2024/08/27(火) 14:13:20.99 ID:oHcafaf7.net] (S)でshortだからSの上のRは無いのと一緒 6Ωと3Ωの並列の合成抵抗は2Ω 12Vかかってるから6A
999 名前:デフォルトの名無しさん [2024/08/27(火) 14:13:37.32 ID:oHcafaf7.net] 答えは燃えるだよ 0A
1000 名前:デフォルトの名無しさん [2024/08/27(火) 14:14:03.15 ID:oHcafaf7.net] どっちが正しい?
1001 名前:デフォルトの名無しさん mailto:sage [2024/08/30(金) 20:00:23.54 ID:/S3k+zaQ.net] SQLAlchemy気に入った おかげでpythonから離れそうにない
1002 名前:勉強スレ誤爆より質問スレに移動 mailto:sage [2024/08/31(土) 13:26:42.65 ID:fwQH707u.net] 関数やクラスにインデックスの指す中身の値でなく“インデックス指定”を渡したいのですがうまく出来ません こんな場合どういうような考え方があるのでしょう(タプルでインデックス数字を渡す?) # [[0,0,0,0,0],[[0,0,0,0,0]] alist = [[0]*5]*2 # 値ではなく箱の位置を意図してるが… hako = alist[0][3] def change(b): b = 3 return change(hako) print(alist) # 全部0のまま change(alist[0][4]) print(alist) # こちらも全部0 実際にはrpgゲームの様々のステートやフラグやそのセーブを管理するクラスに alist[6][15](王さまと喋ったとか)を1にするといった仕事をさせたいと試行錯誤しています 喋る関数、戦う関数やクラスのとこから発生しだいリストを直で操作すればいいのだけど State.change(インデックス, 1)みたく一元的にやりたいとクラスを作ってきています 目的で位置の固定されたフラグなのでメニューを開いているかState.menu(1)、State.kingtalked(1)などとしその先のクラスの関数で位置を決め撃ちするのが良いのかななどと困って考えています
1003 名前:勉強スレ誤爆より質問スレに移動 mailto:sage [2024/08/31(土) 14:58:41.77 ID:fwQH707u.net] 設計からおかしいと思ったので質問は取り下げます ロールプレイングゲームでゲーム状態(シナリオ進捗やパーティーのステータス状態やカーソル位置まで状態の復元可能)の情報は どう作り、ゲーム中に持つのか、どこからリードやライトするのかについて混乱しています ステータスマネージャーのようなクラスにこれ記録しといてと各所から投げればいいのかなと考えてるのが今で 逆に難しくなってしまってる、参考に出来そうなpython製ののrpgを見つけられていません
1004 名前:デフォルトの名無しさん mailto:sage [2024/08/31(土) 15:42:25.61 ID:Q7p5BAl/.net] ゲームプログラムの構造自体に悩んでるように見える 個々のパラメータはカテゴリごとにクラス化して それらを保持するゲームカーネルクラスを考えてみては? セーブ・ロードの時は所属クラスを識別可能なラベルを付けて カーネルが各クラスに分配・収集する もちろんカーネルは分散構造でもいい
1005 名前:デフォルトの名無しさん mailto:sage [2024/08/31(土) 16:31:20.69 ID:fwQH707u.net] ありがとう クラス使い始めてみたばかりで継承など使ってないレベルなので意図の読み取りがあれですが 書いてくれた雰囲気はなんとなく理解しました 例えばシナリオ進捗や済みイベントのフラグ、世界が滅亡するまでの残り時間などの進捗データを保持させるカテゴリーなクラス アイテムやそのソート順選択状態や現在カーソル位置などを保持させるアイテムGUIデータなカテゴリーのクラス それらから収集しまとめて保持していてセーブで書きだし、ロード時に各所へセットしてから再開する統合クラス ラベルで管理とは、辞書型だったりあるいは投げ込むクラス内のステータスごとに対応する関数で配置場所を固定して分けたらいいのかなと…頭が限界ですゆっくり考えてみます
1006 名前:デフォルトの名無しさん mailto:sage [2024/08/31(土) 17:12:20.07 ID:Q7p5BAl/.net] 画面や入力は別のクラスにして 入力クラス→カーネルへのAPI カーネル→画面クラスへのAPI に分離した方が見通しよくなると思う
1007 名前:デフォルトの名無しさん [2024/08/31(土) 19:54:44.30 ID:E1cdB3xT.net] >>990 >>777 >alist = [[0]*5]*2 これやると詰む
1008 名前:デフォルトの名無しさん mailto:sage [2024/08/31(土) 20:12:52.72 ID:fwQH707u.net] >>995 しばらくなぜだろうと考え込んだ(もう1つのスレの方の指摘とあわせ) …思い出した、要素のidが同じになって連動しまうんだっけたしかに挙動に困ったことある もう一回この手の宣言について調べなおし学習しますどうも
1009 名前:デフォルトの名無しさん mailto:sage [2024/09/01(日) 14:38:13.87 ID:MnUgJTxK.net] 元レスの主張をそのままリスペクトすると ctypes の POINTER が超お薦め
1010 名前:デフォルトの名無しさん mailto:sage [2024/09/01(日) 15:14:54.96 ID:MnUgJTxK.net] >>990 https://paiza.io/projects/-YhvJ2Iepe9GDgWHdZQ_wQ import ctypes def a(p): p.contents.value = 3 x = [[ctypes.c_uint32(j * 3 + i + 1) for i in range(3)] for j in range(3)] print(x) a(ctypes.pointer(x[1][1])) print(x) # [[c_uint(1), c_uint(2), c_uint(3)], [c_uint(4), c_uint(5), c_uint(6)], [c_uint(7), c_uint(8), c_uint(9)]] # [[c_uint(1), c_uint(2), c_uint(3)], [c_uint(4), c_uint(3), c_uint(6)], [c_uint(7), c_uint(8), c_uint(9)]]
1011 名前:デフォルトの名無しさん mailto:sage [2024/09/01(日) 19:02:55.77 ID:tGCM6k6e.net] >>997 ありがとう 最終的には教えてもらった辞書型でうまく意図した役割をつなぐことに成功しました 「Pythonでゲーム作りますが何か?」というハテナのblogを参考にクラスというもの主体の作り方に触れ そこのgithubのpython3ソースを見たりしながらタイルチップrpgでないadv寄りな自分のものにあてはめているところでした ある程度のとこで連載は終わっていて残念、実践的ですごく参考になりました
1012 名前:デフォルトの名無しさん mailto:sage [2024/09/01(日) 20:02:05.87 ID:tGCM6k6e.net] 次スレ 【まず1嫁】くだすれPython(超初心者用) その60 https://mevius.5ch.net/test/read.cgi/tech/1725188284/ スレ立てがNGRockにかかるためテンプレの一部変えました
1013 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 416日 1時間 13分 25秒
1014 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています