[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 07/23 21:37 / Filesize : 276 KB / Number-of Response : 1015
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【まず1嫁】くだすれPython(超初心者用) その59



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 ###

388 名前:デフォルトの名無しさん mailto:sage [2024/02/08(木) 12:37:21.60 ID:LLz4mv+z.net]
>>377
numpyのことじゃね?

>>375
C言語で開発されてるライブラリはインストール時(pip install等)に実行するプラットフォーム用にコンパイルされたバイナリが含まれたパッケージをダウンロードしてくるかソースをからコンパイルしてる
ライブラリをインポートしたPythonのコードが特定のプラットフォーム用のコードを書いてなければWindowsでもMacでも動く

389 名前:デフォルトの名無しさん mailto:sage [2024/02/08(木) 13:13:39.69 ID:LLz4mv+z.net]
>>374
jupyterlabならHighlight white spacesという設定でタブもスペースも可視化できるよ

390 名前:デフォルトの名無しさん mailto:sage [2024/02/08(木) 14:21:16.75 ID:MMHd3icf.net]
基本、C# 以外の全言語は、Linux 用。
だから、Windows 10 でも、WSL2 でLinuxを使う。
Mac ではVirtual Box でLinux

初心者はLinuxが難しいから、Windows上のMSYS2 を使う。
例えば、Ruby Installer がそう

MSYS2なら、1GB ほどのWindows用の巨大なコンパイル環境もインストールする。
これで、Linux用のソースコードを、Windows用の機械語にコンパイルする

ただ、全言語はLinux用に書いているから、
Windows用にコンパイルすると、うまく動かない場合もある

利点は、仮想マシンでLinuxを起動していないから、あまりメモリを使わない。
欠点はLinuxじゃないから、Docker を使えない事。
データベースなどの外部プログラムも全て、Windows用で揃えないといけない

そうすると、中にはバグるプログラムも出てくる。
全てのプログラムがLinux用に作ってあるから

391 名前:デフォルトの名無しさん [2024/02/08(木) 18:58:16.38 ID:T36ggrXR.net]
>>375
50代のスレに書き込んでいるおっさんだろ?

392 名前:デフォルトの名無しさん [2024/02/08(木) 18:59:24.55 ID:T36ggrXR.net]
>>385
なかなかのキチガイだなw

393 名前:デフォルトの名無しさん [2024/02/08(木) 20:35:36.46 ID:PMTWmDyI.net]
>>385
Rubyに関わるのはこんなキチガイばっかりです

394 名前:デフォルトの名無しさん mailto:sage [2024/02/09(金) 08:55:46.64 ID:JpXObIpk.net]
河上幸恵ちゃんの名曲
心の中のルビーというやつだな

皆さんありがとう
また一歩自分の成長を感じました
C言語のライブラリはそれぞれのパソコン用がインストールされる高度な仕組みであること
ジュピターで空白タブを表示する方法
皆さんはわたしの成長ホルモンです

395 名前:デフォルトの名無しさん [2024/02/14(水) 15:26:02.91 ID:uypU95In.net]
os.path.isfileの様なやり方でループなど使用せずに、
拡張子を除いた部分のファイル名が存在するか確認する方法ってありますか?

例えばファイル名”test01.txt”,”test01.png”のどちらがディレクトリに存在していても、”test01”だけでファイルの有無を確認したいです。

396 名前:390 [2024/02/14(水) 15:45:38.27 ID:uypU95In.net]
自己レスです。
とりあえず、glob.glob(‘/hoge/test*’)としてやってみました。
こんな方法もあるよというのがあれば教えてください。



397 名前:デフォルトの名無しさん mailto:sage [2024/02/21(水) 10:41:22.80 ID:tURWv7oT.net]
os.path.exists

398 名前:デフォルトの名無しさん mailto:sage [2024/02/21(水) 22:24:18.46 ID:XpCZiALh.net]
globでいいと思うけど一応
https://docs.python.org/ja/3/library/pathlib.html#pathlib.PurePath.stem

399 名前:デフォルトの名無しさん mailto:sage [2024/02/25(日) 04:23:40.84 ID:oObtEil6.net]
Pythonのandroidでの実行環境って何を入れたらいいですか?
開発環境はとりあえず必要ないので
あくまでスクリプト・インタープリターとしての最低限の実行環境がほしいのです
CPythonみたいなリファレンス実装があればいいのですけど

400 名前:デフォルトの名無しさん mailto:sage [2024/02/25(日) 20:23:29.26 ID:hMq2Qtw2.net]
termuxかpydroidかなあ?

401 名前:デフォルトの名無しさん mailto:sage [2024/02/25(日) 20:32:04.31 ID:hMq2Qtw2.net]
python以外もつかうならtermux、uiが使いたいならpydroidかな?

402 名前:デフォルトの名無しさん mailto:sage [2024/02/25(日) 21:17:43.23 ID:oObtEil6.net]
>>395,396
レスありがとう
どちらかというと開発環境みたいな感じなんですね
ほかにQPythonとかQPython 3Lとかはどうですか
よりシンプルな実行環境という観点からするとどれになるのでしょうか

403 名前:デフォルトの名無しさん mailto:sage [2024/02/26(月) 23:37:11.68 ID:GBHslgGd.net]
レビュー見る限りその2つはあまり良くなさそうだね

404 名前:デフォルトの名無しさん mailto:sage [2024/03/05(火) 16:51:36.85 ID:90GfYifC.net]
凄い基本的な質問なんだけどライブラリのことを考えるとPythonはanacondaとPythonそのままどちらのほうがお勧めですか
または他にお勧めのツール?的なのある?

405 名前:デフォルトの名無しさん mailto:sage [2024/03/05(火) 17:04:30.62 ID:90GfYifC.net]
ライブラリじゃなくてモジュールでした

406 名前:デフォルトの名無しさん mailto:sage [2024/03/05(火) 18:49:14.75 ID:xnDaPNvs.net]
とりあえず、公式実装のCPythonでいいのでは?
やりたいことが明確になってから必要に応じてanaconda環境を構築すればいいと思う



407 名前:デフォルトの名無しさん mailto:sage [2024/03/06(水) 15:55:05.95 ID:fNmftXEr.net]
何かライブラリなどをインストールしようとするたびにエラーがでて説明通りにできない
こんなもん?

408 名前:デフォルトの名無しさん mailto:sage [2024/03/06(水) 16:59:36.65 ID:0Fz1GTqO.net]
説明が悪いんでは
前提としてる環境が違っててそこまでは書かれてないとか

409 名前:デフォルトの名無しさん mailto:sage [2024/03/06(水) 18:30:41.18 ID:vezaZ1iv.net]
>>402
その説明では分からない

410 名前:デフォルトの名無しさん [2024/03/07(木) 20:32:37.26 ID:aIlNu4oQ.net]
自分はPycharmのflaskでウインドウズでは環境構築できなくて諦めました
同じことやってるのに、Macでは動いてウインドウズではエラー
Pythonって学ぶスタート地点に立てない人少なくないかも?

411 名前:デフォルトの名無しさん mailto:sage [2024/03/07(木) 20:50:36.75 ID:Xi0SwO4p.net]
>>364
マジで誰でもできるよ
Pythonに限らずだけど経験一年以上とかで求人出てるし
俺は学歴で落とされたがね
そもそもanaconda使いながらpipとか使うと環境壊れるよ

412 名前:デフォルトの名無しさん mailto:sage [2024/03/07(木) 20:53:48.81 ID:Xi0SwO4p.net]
>>359
まぁ人によって印象違うんだ

413 名前:うな
俺はPHPはもう一生触らないと決めたけど

そしてイテレータやらクロージャやらやんなくていいから
そういうのは出てきた時に意味が分かれば十分
[]
[ここ壊れてます]

414 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 00:09:38.55 ID:xxGRRb0E.net]
基本、全言語はLinux 用。
Windows 用は、C# だけ

だから、Windows 10 から、WSL2・仮想マシンでLinuxを起動できるし、
Docker Desktop も使える

だから、Windows/Mac ネイティブ機械語は動かない。
Linux用のソースコードを、Windows/Mac用コンパイラで機械語にするのは邪道

でも、MacはUNIX のBSD だから、Linuxと似ているので、まずまず動くけど、
仮想マシンでLinuxを起動する方が確実

Windowsで、MSYS2, Visual Studio でコンパイルすれば、Winodows用の機械語になる。
しかし各モジュールの作者は、面倒くさいからLinuxにしか対応しないので、
Windows/Macでは動かない

415 名前:408 mailto:sage [2024/03/08(金) 00:21:23.96 ID:zqy1N+OL.net]
なぜ、Windows/Mac用のネイティブ機械語にしたいのかと言うと、
仮想マシンでLinuxを起動したくないから。
2つのOS が動くから

その代償に動かなくなる。
Linuxじゃないから、Docker Desktop も使えないし

例えば、自分がC/C++ のモジュールを書く時、Linuxにしか対応しないよな。
Windows/Mac用のファイルシステムや、プロセス/スレッドに対応しないはず。
3つのOS で動くようには書かないはず。
面倒くさい

416 名前:デフォルトの名無しさん [2024/03/08(金) 00:50:54.05 ID:FJDucPJF.net]
>>408
またこの馬鹿の書き込みか
ruby馬鹿よりはマシだけど



417 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 04:38:04.66 ID:xViuWNSj.net]
クロージャとデコレータが極悪に難しい
ドキュメントや本を何冊も読んだが何のためにどうやって使う機能なのかさっぱりわからず自己嫌悪に陥る
この世は無知な方が幸せなんだよな…

418 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 15:18:49.79 ID:b4tlhFyW.net]
python齧ったけどわけわからん
やっぱCOBOLがわかりやすいわ

419 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 16:10:05.35 ID:JEcqFwbk.net]
Pythonで何作れたら中級者くらいって言えるかな?ゲームとか?

420 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 16:11:57.72 ID:uXHmVfiG.net]
VS Code使ってたせいだか何だかわからんけど、気分変えて作業フォルダを変更したらimport命令で自作モジュール読み込みするとエラーに。
メインpyファイルと同じフォルダの別pyファイルがimportできない

ぐぐりまくってsys.path.append("ここに任意パス")で上記フォルダの絶対パスを指定したらいけたが、
じゃあそもそも元のパスはなぜ指定もせずにimport出来てたのかっていう疑問が残った。なんか怖い

421 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 16:15:01.89 ID:uXHmVfiG.net]
ちなみにこういうエラーね
ModuleNotFoundError: No module named 'My_Mod'

422 名前:デフォルトの名無しさん [2024/03/08(金) 16:40:50.56 ID:T/tXaIRT.net]
>>414
そうですね。
怖いですね。

423 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 17:18:26.85 ID:YKaVE2hY.net]
>>414
もしかして:Pythonのバージョンも違う

424 名前:デフォルトの名無しさん [2024/03/08(金) 18:34:14.21 ID:1bn2hcNH.net]
>>414
https://docs.python.org/ja/3/tutorial/modules.html#the-module-search-path
には、
「入力されたスクリプトのあるディレクトリ (あるいはファイルが指定されなかったときはカレントディレクトリ)。」がsys.pathに含まれてるって書かれてるのに変だよね
絶対パスを書く他にも、
os.path.abspath(__file__)とかする方法もあるよ
pathlibでPath(__file__)と書いても良いけれど(自分は実はこっちばかりだけど)

425 名前:デフォルトの名無しさん mailto:sage [2024/03/08(金) 22:04:15.13 ID:Olq6J6jV.net]
>>402
pip環境が壊れちゃったのかなあ

426 名前:デフォルトの名無しさん mailto:sage [2024/03/09(土) 02:10:53.23 ID:V+9wfNne.net]
外部ライブラリはPythonの強みであり同時に弱みでもあるね
ライブラリがらみのトラブルで世界中でどれだけの人生が無駄に消費されているだろうか



427 名前:デフォルトの名無しさん mailto:sage [2024/03/09(土) 02:23:23.87 ID:RQZY5Guv.net]
Ruby のrequire が使うロードパスには、
current working directory(cwd) は含まれていないから、

require 'abc' はエラーになるけど、
相対パスのrequire './abc' はOK

一方、require_relative 'abc',
require_relative './abc' は、どちらもOK

相対パスも、その起点がどこからかという問題もある。
ファイルからの相対なのか、cwd からの相対なのか

cwd を変えて、実行してみればよい

428 名前:デフォルトの名無しさん mailto:sage [2024/03/09(土) 05:27:46.59 ID:b/ATK8wU.net]
結局開発環境だと.venv/bin/activateの中にPYTHONPATH書くのが早いんだな

429 名前:デフォルトの名無しさん [2024/03/09(土) 12:09:06.37 ID:innwL8du.net]
開発環境でもpip installしたほうが

430 名前:デフォルトの名無しさん [2024/03/09(土) 12:15:40.44 ID:innwL8du.net]
配布先とか別環境でも同じ使い方できるから楽
なんとかtoml最小限書くだけでできるよね?
レス別れちゃってごめんね

431 名前:デフォルトの名無しさん mailto:sage [2024/03/09(土) 12:47:03.50 ID:hNim5q60.net]
venvで細かく分けて保存
何かインストール難しそうなものがあったら
新たな環境作ってそこにpip install
それで壊れたらその環境捨てる

という訳で気付いたら環境が15個とか出来てる

anacondaでconda-forgeから取れるようにすると少し楽だが、いずれにしても管理の習慣が無い人ほどしくじり易い
「どうせ上手く行くから大丈夫じゃねーの?」と舐めプして
基本環境にpip失敗してpython丸ごと再インストールとなる

一般に「アップデートして最新にしましょう」というのがOSや市販アプリなら常識だが
pythonでは他ライブラリとの相性もあり、何でもかんでもupdateすると怖い
conda update condaはさすがにまあ安全だが

432 名前:デフォルトの名無しさん [2024/03/09(土) 17:35:27.63 ID:KPeEXLi+.net]
>>425
>基本環境にpip失敗してpython丸ごと再インストールとなる
ここがちょっとわかんない

433 名前:デフォルトの名無しさん mailto:sage [2024/03/09(土) 18:34:45.65 ID:bB58iYl/.net]
管理者権限でpip実行してんじゃね?

434 名前:デフォルトの名無しさん mailto:sage [2024/03/09(土) 19:30:49.00 ID:b/ATK8wU.net]
AIないと何もブログラミング出来ないんだけどこれでいいのだろうか

435 名前:デフォルトの名無しさん mailto:sage [2024/03/09(土) 21:56:34.21 ID:Dg4V+RZb.net]
>>428
いいんだよ
プログラミングなんて本来人間のやる作業じゃない
コンピュータのことはコンピュータに任せりゃいい
人間にしかできない仕事をやればいい

436 名前:デフォルトの名無しさん [2024/03/10(日) 04:36:05.69 ID:YuaEvpE6.net]
>>429
こういう馬鹿ばっか



437 名前:デフォルトの名無しさん [2024/03/10(日) 05:30:03.67 ID:DGzgjbzK.net]
使えるものは使いこなして効率や生産性をあげないと
使いこなす人に出し抜かれる
有能なアシスタント雇ったと思えばいいじゃないかな

438 名前:デフォルトの名無しさん mailto:sage [2024/03/10(日) 08:41:17.31 ID:GTFEZR4A.net]
>>430
ChatGPT使って書いてみなよ
今までプログラミング技術の習得に費やしてきた時間が全て無駄だったとわかる

439 名前:デフォルトの名無しさん [2024/03/10(日) 11:04:27.88 ID:xltcl5gU.net]
>>432
全くそうは思わないな
matplotlibみたいな使うのにリファレンス読む時間がめちゃくちゃ長いのは勉強しなくてよくなった感じがするけど
ChatGPTに短い日本語で指示すれば書けるようなプログラムしか書けるようになってないだけだと思うよ
超初心者スレでいうのもあれだけど

440 名前:デフォルトの名無しさん [2024/03/10(日) 12:28:14.94 ID:2l3n+JcC.net]
Excelのマクロ記録というものも知らなそう

441 名前:デフォルトの名無しさん [2024/03/10(日) 17:18:49.80 ID:NwXd028v.net]
漁獲を Excelで管理するということ?

442 名前:デフォルトの名無しさん mailto:sage [2024/03/10(日) 22:53:10.30 ID:+HoghBJd.net]
サバの管理も必要

443 名前:デフォルトの名無しさん [2024/03/12(火) 18:56:30.23 ID:ArnB6rOr.net]
関数間を1行空けると、Vimの Pymodeに、
1 error| expected 2 blank lines after class or function definition, found 1
と怒られ、3行空けると
1 error| too many blank lines (3)
と怒られ、余計なお世話に憤激した。

https://peps.python.org/pep-0008/#blank-lines
> Surround top-level function and class definitions with two blank lines.
などと書かれてあるが、お前等、きっちり2行空けているのかね。

444 名前:デフォルトの名無しさん [2024/03/12(火) 22:47:34.41 ID:BkSU/P3i.net]
>>437
空けてる
だってflakeに怒られるんだもん
どうでもいいような書き捨てコード書くときはそもそもJupyterとかで書いておしまいだから
PEP8とか気にしないけど、IDEで書いてる時点でメンテナンス性を意識しているから、
PEP8のようなルールに従っておこうという気持ちになっている

445 名前:デフォルトの名無しさん [2024/03/12(火) 22:47:41.26 ID:vXSbeabq.net]
__ <- このアンダーバーをインデントと仮定する

for x in xs:
__for y in ys:
____for z in zs:

このようにxyzの多重ループで
zからyの所に抜けたい場合とzからxに抜けたい場合に
書き分けられる構文 python3にある?

perl5 で書くとこんなラベル構文がある
https://ideone.com/rIV69S

446 名前:デフォルトの名無しさん mailto:sage [2024/03/12(火) 22:53:07.42 ID:uGnBKOkv.net]
https://github.com/PyCQA/pycodestyle/issues/400
シンプルなようで厳格化するのはたいへんでおもしろい



447 名前:デフォルトの名無しさん mailto:sage [2024/03/12(火) 23:00:25.97 ID:uGnBKOkv.net]
>>439
インデントが空白4文字な世界だと
その場で3重の入れ子なんて書かないから
関数かなんらかのブリッジが介在するはず
だから例外や返り値でいくらでも制御できる
デコレータつかうのといいかも

448 名前:デフォルトの名無しさん [2024/03/12(火) 23:05:19.86 ID:n3W+Fun6.net]
>>439
gotoパッケージを入れて、goto文を使ってもいいが、そんなループをしないといけないのか?

449 名前:デフォルトの名無しさん [2024/03/12(火) 23:10:52.05 ID:n3W+Fun6.net]
>>439
ループする条件とbreak文の組み合わせでもいいのに
ネタなの?

450 名前:デフォルトの名無しさん mailto:sage [2024/03/12(火) 23:22:29.84 ID:oG8PduKS.net]
>>437

きっちりつか、autopep8かけるだけ。

451 名前:デフォルトの名無しさん [2024/03/13(水) 00:57:33.03 ID:TCqO/DNK.net]
Pythonはかなり古めかしい考え方のプログラミング言語だからな

452 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 02:43:27.57 ID:ptopN5lQ.net]
Ruby で、多重ループから一気に抜け出すのは、
ラベル付きのKernel.#throw/#catch を使う

453 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 05:11:03.78 ID:NVpOWzEq.net]
Rubyはcallccあるんじゃない?なんでもできるでしょ
Pythonもコルーチンあるから今のVMで実装はできそうだけど
あえて提供してないんだろうな

454 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 08:24:43.29 ID:fKc7/92t.net]
あれ、breakやcontinueの後に脱出先のラベル名を指定できたはずだが
別の言語だったかな?

455 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 08:38:24.40 ID:6IE1D2aF.net]
javaだな

456 名前:デフォルトの名無しさん [2024/03/13(水) 12:46:02.87 ID:q50ahorY.net]
>>441
インデントが空白4文字であることと入れ子を3重にしないことの因果関係が不明
関数やブリッジを介在した方がわかりにくいコードになることもあるぞ
そもそもCでも空白4文字インデントを使うことが多いが、
普通に3重ループは出てくるでしょ
例えばここ
https://github.com/numpy/numpy/blob/9de8a809efa4c8193a168af9191a0c69290db3e4/numpy/_core/src/umath/ufunc_type_resolution.c#L1517

波括弧がないからlambdaでreturnを持つ複数の文を1つの式で扱えないとかだったらわかるけど、
インデントは関係ないでしょ

綺麗なコードを設計しよう、書こうとしてさまざまななテクニックを知ろうとする意識は大事だと思うけど、
実践なしに本とかに書かれてた「このテクニックはこういうときに使う」を鵜呑みにして、
テクニックを使わない方が見通しが良くなるような簡単な場合にも無理に使おうとするのは
よくないと思うけどなあ。デザインパターンの濫用みたいな感じ。
戻り値で判定はあり得ても例外はあり得ないわ。
誤用としか言いようがない。



457 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 13:02:27.40 ID:q3MDl01V.net]
for~else ってなんか直感的じゃない気がするんだけど、なんで「else」なの?

completed
breaked, aborted
finally
みたいな単語なら分かりやすいのに。

458 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 13:27:55.78 ID:baZhL1uT.net]
すげえ大昔からあるんだな
https://stackoverflow.com/questions/682185/which-version-of-python-added-the-else-clause-for-for-loops

459 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 15:16:21.22 ID:NVpOWzEq.net]
>>450
妄想がはげしい
5chで5行超えたら一旦立ち止まろう
後半句点も復活しているw

460 名前:デフォルトの名無しさん mailto:sage [2024/03/13(水) 15:54:43.36 ID:m9o7WxBh.net]
>>439
それ用の構文は無い
大域脱出の代替手段はいくつかあるけど基本的には早期リターンで対応する
その例だと内側の2重ループを関数化してbreak, continue, return(もしくはyield)で対処可

>>451
for-elseはBad Partsなので使わない
Effective Pythonにも使うなと書いてある
よくある”not found”みたいな処理はfor文の一部としてではなく
一つ上位でハンドリングすべき処理なので役割分担が間違ってる

461 名前:デフォルトの名無しさん [2024/03/14(木) 03:42:52.99 ID:/Z8fZW3i.net]
>>453
どの辺が妄想なの?
すぐ5行以上とかのレスに長文乙って返してくる人どの板にもいるけど根拠が示されて若干長くなった文章読めないの?短文でマウントとるだけのレスほどくだらないものはないと思うけどね
句読点があったりなかったりすると何が問題なわけ?
447では意味ありそうなレスしてるのに一方で煽るとは不思議な人だね

462 名前:デフォルトの名無しさん mailto:sage [2024/03/14(木) 19:42:58.77 ID:4bFX29zW.net]
pythonをサーバーでプロジェクトルートを認識させられない

NoModuleNamed"プロジェクトのフォルダー名"になる

herokuなんだけど

463 名前:デフォルトの名無しさん [2024/03/14(木) 21:13:08.36 ID:xE50NtDY.net]
>>450
日本だと4つが一番多いが、外国だと8つも多く、16すらある。

464 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 13:14:40.59 ID:6p0ry24q.net]
pygameのlineを使い時計の秒針のようか円を描こうとしたんですがうまく行かない
どこが悪いの???

465 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 13:15:14.89 ID:6p0ry24q.net]
import sys
import math
import numpy as np
import time
import pygame

pygame.init()
WHITE = (255,255,255)
WIDTH, HEIGHT = 400, 300
SURFACE = pygame.display.set_mode((WIDTH, HEIGHT))
FSPCLOCK = pygame.time.Clock()

center_x = WIDTH // 2
center_y = HEIGHT // 2
def main():
while True:
for event in pygame.event.get():
if event == pygame.QUIT:
pygame.quit()
sys.exit()

466 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 13:15:36.25 ID:6p0ry24q.net]
for theta in range(0, 360, 20):
rad = math.radians(theta)
R = np.array([[math.cos(rad), -math.sin(rad)],
[math.sin(rad), math.cos(rad)]])

point = np.array([center_x, center_y])
rotated_point = np.dot(R, point)

x = rotated_point[0]
y = rotated_point[1]

pygame.draw.line(SURFACE, WHITE, (center_x, center_y), (int(x), int(y)))

time.sleep(1)
pygame.display.update()
FSPCLOCK.tick(100)

pygame.quit()
sys.exit()

if __name__ == '__main__':
main()



467 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 14:06:44.19 ID:6p0ry24q.net]
うまく行かない→画面外にlineの先端が飛び出す です

468 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 15:38:52.20 ID:NWS7XA3x.net]
>>461
これを試してみてくれ
point = np.array([0, -center_y])

x = rotated_point[0] + center_x
y = rotated_point[1] + center_y

469 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 15:59:41.53 ID:6p0ry24q.net]
>>462
ありがとう
円になりました

470 名前:デフォルトの名無しさん [2024/03/15(金) 17:26:12.14 ID:8JWNUOHY.net]
>>456
なんで?

471 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 17:38:05.39 ID:NWS7XA3x.net]
>>463
座標回転は原点からのベクトルにしてから回転して
後で始点座標を加算する
後、縦横の長さが違う時は短い方に合わせないと飛び出す
必要なら1/2、1/4などして長さを調節する
画面サイズを元にスケーリングして長さを求めるのは画面サイズに依存しないやり方

472 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 17:46:21.03 ID:F3qtk1ON.net]
>>464
project_xっていうような名前のプロジェクト名だったけどherokuを覗いてみるとそんなフォルダーはなくて/app/って名前になってた

だから相対パスや絶対パスを消して全部プロジェクトルートからのimportにした(ここらへんよく分かってない)

あとherokuでポスグレ使うためにadd-on入れて、自動生成されたsqlalchemyに接続するためのDATABASE_URLっていう環境変数の中身であるpostgres://から始まるurlが正しくはpostgresql://でコード中で直す羽目になった

色々とherokuは使いやすくない
これならawsでも学べばよかった

473 名前:デフォルトの名無しさん mailto:sage [2024/03/15(金) 17:47:08.11 ID:F3qtk1ON.net]
あとgitのdevelopブランチをpushしてたけどherokuはmasterしか見ないらしくそれもハマった

474 名前:デフォルトの名無しさん [2024/03/15(金) 21:48:19.54 ID:8JWNUOHY.net]
>>466
>だから相対パスや絶対パスを消して全部プロジェクトルートからのimportにした(ここらへんよく分かってない)
https://devcenter.heroku.com/articles/getting-started-with-python?singlepage=true
https://devcenter.heroku.com/articles/python-pip
この辺みたらpipでインストールできるようにしてたらコード書き換える必要なさそう

herokuに限らずデプロイするのにコード書き換える必要がでてきてしまったのはパッケージの構成がよくなさそう
何にしろ別環境にデプロイする以上、pipでインストールできるような構成にした方が楽だよ

475 名前:デフォルトの名無しさん [2024/03/15(金) 23:44:29.33 ID:gLD47Opc.net]
>>451
条件式がTrueのときループして、条件式がFalseのときelseになる
forもwhileもループ目的でつかうので、条件式がFalseのときというのは自然と終了時になる
たとえば下記のようなループしないコードだとfalseとだけ表示される

while True == False:
____print("true")
else:
____print("false")

476 名前:デフォルトの名無しさん [2024/03/16(土) 00:23:50.73 ID:tIIuw8RV.net]
いやいや



477 名前:デフォルトの名無しさん [2024/03/16(土) 00:34:26.59 ID:IFaiGfVE.net]
キーワードを節約のために同じ単語を使ってるけど
if-elseのelseと
try-except-else-finallyのelseと
for-else/while-elseのelseと
みんな意味が違う

ループのelseは”if not break”

478 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 00:41:49.95 ID:ENgm2ZqF.net]
意味を与えたら異なってくるけど
内部処理は同一にみえん?

479 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 03:10:31.74 ID:KKwFKDp9.net]
全部gotoやろなあ

480 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 05:06:55.01 ID:aWIocRO6.net]
herokuにアップしたらドメインとフォルダーの間のスラッシュが何故か2つになって恐らくそのせいで404とcors error出る
ローカルではちゃんと動くし有り得そうなところは全部見たんだが

もうfastapi、react、herokuのどれのせいなのかわからなくて積んだ

elastic beanstalk に変えてデプロイし直すか.....

481 名前:デフォルトの名無しさん [2024/03/16(土) 10:02:19.46 ID:eI+Kyosu.net]
なんか、ドキュメントとかログとか読まなそうな人だな

482 名前:デフォルトの名無しさん [2024/03/16(土) 10:47:04.93 ID:h3KSZFE8.net]
>>473
ジョークにマジレスしちゃうけどgotoする条件の違いが重要

goto if false
goto if no exception
goto if no break

483 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 12:00:46.66 ID:KKwFKDp9.net]
>>476
(なので同一には見えないの意味でした. 補足ありがとう

484 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 13:00:21.70 ID:BNVm3LV8.net]
たぶん予約語を増やしたくないからelseを流用したんだろうね
この辺は言語設計のさじ加減だから仕方ない

485 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 13:18:07.52 ID:gBCe/Ijm.net]
try-exceptのelseってtryに全部書きたくない人が使うの…?

486 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 14:41:32.39 ID:fX07kGnW.net]
こんな混乱が起こる構文なので
使わない方がベター
実装されてる機能が全ていいとは限らない



487 名前:デフォルトの名無しさん mailto:sage [2024/03/16(土) 15:25:29.24 ID:S+aPEpZd.net]
例外が発生するかもしれないけど上のexceptに混ぜたくない処理を書きたい場合とか?

488 名前:デフォルトの名無しさん [2024/03/16(土) 23:03:57.53 ID:1SZ3hjNN.net]
forのelseというのは
forに対するelseではなく
forのループの条件式に対するelse

だから意味は違っても内部処理は同一となる
なのでif-elseをループさせてやるとfor-elseと同じ処理を再現できる
https://ideone.com/2MULxa






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<276KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef