1 名前:デフォルトの名無しさん mailto:sage [2021/12/27(月) 01:38:10.93 ID:GepmXCuJ.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/ ほぼ直
515 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 12:59:31.84 ID:d0jgyl+4.net] ファイルの文字コードがSJISになってるんじゃないかな UTF-8で保存し直してみたら
516 名前:デフォルトの名無しさん [2022/03/19(土) 13:06:08.80 ID:CtZdn1W5.net] >>506 vscode上ではそれで動く
517 名前:デフォルトの名無しさん [2022/03/19(土) 13:12:31.23 ID:umrdatZo.net] >>506 です。 こちらで解決しました! お騒がせしてすみません。
518 名前:デフォルトの名無しさん [2022/03/19(土) 19:10:36.78 ID:ozskatPz.net] if x : return elif y : return else: 処理 みたいな、ガード連打するときなんか改行なしで行きたい気がするんだけど やっぱ許されぬ罪なのですか神父様
519 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 19:21:11.13 ID:guM/7r5m.net] elif/elseにする必要なくない?
520 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 20:04:09.95 ID:XBFSEYPW.net] Kotlinとか書いてると実にそう思うが、そんな将来は来ない
521 名前:デフォルトの名無しさん [2022/03/19(土) 20:47:24.25 ID:26UREXqN.net] if x or y: __return else: 処理 じゃだめなん?
522 名前:デフォルトの名無しさん [2022/03/19(土) 21:45:40.71 ID:pKV2CHvJ.net] >>513 主題はそこじゃなくて アーリーリターンが続くような構造では改行レスのreturnと書きたいが、許されるかどうか ということでは
523 名前:デフォルトの名無しさん [2022/03/19(土) 21:51:17.02 ID:GkqZBVMg.net] 大学の研究室のコードとかはめちゃクソ改行レス あいつら道具は動けばいいんでしょ精神だからぬ
524 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 23:15:07.02 ID:guM/7r5m.net] でもカッコやendいるわけじゃなし 1行returnくらいあってもむしろ見通しいいし
525 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 23:25:51.88 ID:ahrdIXj0.net] インデント強制するような糞言語だからなぁ
526 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 23:33:43.71 ID:1HyJgrvG.net] if x or y : return orでつなげるなら一応一行でも行けるぽいけど
527 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 23:50:57.25 ID:1HyJgrvG.net] ガード節早期リターンをいれるなら if elif elseでつなげるよりもifの連打でとことんリターンさせた方が条件の独立性も保たれるしわかりやすい てかelifやelse 意味ないし if a: return if b: return if c: return
528 名前:デフォルトの名無しさん mailto:sage [2022/03/19(土) 23:53:44.87 ID:1HyJgrvG.net] でも基本的にフロー制御せずに済むようにするのが一番
529 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 00:04:23.22 ID:rHLSIq5o.net] jupyterlabのvpythonの拡張機能を入れようとしたら 3.3.2~3.4.0と5.3.2~5.4.0を同時に求められたんですがどうしたらいいですか https://i.imgur.com/tBr5qLg.png
530 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 07:50:41.23 ID:aLyHOWc6.net] >>501 Ruby では、空行は改行が2つ続くので、そこで分割すると、 input_text = <<'TEXT' あ い う え TEXT p ary = input_text.split( "\n\n", 2 ) # 最大で2分割 #=> [ "あ\nい", "う\n\nえ\n" ]
531 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 14:47:11.41 ID:ijxTKnpM.net] ---a.py----- import b x="abc" b.kansu() ---b.py----- def kansu() global x print(x) a.pyを実行させて、その中で呼び出された関数kensuの中でa.pyで定義された変数xを参照したいんですけどできます。 xが定義されてないて言われるんだけど。
532 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 14:48:37.57 ID:PCBgHcJM.net] import b b.kansu(x) --- def kansu(x):print(x)
533 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 15:01:05.51 ID:ijxTKnpM.net] >>524 そうやりたいけど、 b.kansu()をb.kansu(x)に変更するのが大変だから、質問してる。
534 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 15:11:44.38 ID:BhdZW57e.net] 質問です 大量にあるpng画像の中にある特定の画像が含まれる画像だけ抽出することはできますか? 例:オンラインゲームの撃破ログ時に特定の画像が画面内に現れるとする(ヘッドショットアイコンなど) その画像は不変であるが、画面内のどこにあるかは不特定。 特定の画像のimgを先に作成しておき、その画像が含まれる画像のpngデータを抽出したい。
535 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 15:14:23.73 ID:PCBgHcJM.net] pyscreeze.locate
536 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 15:23:33.53 ID:48q5H/E5.net] >>523 できるけどおすすめしない import b b.x = “abc" b.kansu() bにxのアクセサ(プロパティ)つくるのがましかな
537 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 16:35:08.52 ID:ijxTKnpM.net] >>528 出来ました。 ぜんぜんおすすめのような気がする。 ありがとうございました。
538 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 18:38:00.86 ID:qHCIAUP+.net] 変数じゃなく定数だったりすると、 本来は、別のconfig.pyあたりに書いて同じことをするんだっけ? import config as g g.x = 'abc' みたいに
539 名前:デフォルトの名無しさん [2022/03/22(火) 20:38:23.71 ID:Rdq5z+Lu.net] >>526 OpenCVのテンプレートマッチング
540 名前:デフォルトの名無しさん [2022/03/23(水) 15:54:16.61 ID:cM5bvOqV.net] bbox = [0, 0, 100, 100] l, t, r, b = bbox l = 20 print(bbox) -> [20, 0, 100, 100] こういうことがしたいんですが、どうすればいいですか どういう単語で検索したらいいのかすらわかりません
541 名前:デフォルトの名無しさん mailto:sage [2022/03/23(水) 16:22:45.21 ID:9UuCXyQL.net] bbox[0]指定だと困る理由は?
542 名前:デフォルトの名無しさん [2022/03/23(水) 17:07:45.87 ID:cgrsbd9g.net] >532 辞書使って無理やり。 bbox = { 'l': 20, 't':0, 'r':100, 'b':100 } bbox['l'] = 20 bbox_values = list( bbox.values() ) print( bbox_values )
543 名前:デフォルトの名無しさん mailto:sage [2022/03/23(水) 17:18:26.23 ID:PTuUM17Q.net] あえてやるならこんなのとか 単語で検索するとしたらオブジェクト bbox=([0],[0],[100],[100]) l,t,r,b=bbox l[0]=20 print(bbox) ->([20], [0], [100], [100])
544 名前:デフォルトの名無しさん mailto:sage [2022/03/23(水) 17:27:30.54 ID:Uj8u7VlE.net] 配列順に意味があるなら L,T,R,B = 0,1,2,3 bbox[L] = 20 とか 意味ないならクラスか辞書で保持すべき
545 名前:デフォルトの名無しさん [2022/03/23(水) 18:03:21.12 ID:cM5bvOqV.net] あーなるほど、そういう感じなんですね わかりました。ありがとうございます なんか要素へリンクしてて l = bbox[0] print(l) # 0 l = 20 print(bbox[0]) # 20 みたいな感じになると思ってました bboxクラス作ります
546 名前:デフォルトの名無しさん mailto:sage [2022/03/23(水) 19:08:25.09 ID:OkzK5R+n.net] >>537 話ずれるけど、要素を外で書き換えるよりも箱の拡大縮小みたいなメソッドを作る方が一般的な気がします
547 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 13:39:47.22 ID:uOX7ULt1.net] openpyxlでxlsxファイルを作る時にひとつのシートに複数のグラフを描こうとしたらThe same chart cannot be used in more than one worksheetってエラメ吐いたんだけど何でだろう エラメでぐぐってもイマイチよくわからなかった
548 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 14:33:26.73 ID:9HZfMhVl.net] chart2=chart1 とかやったりするとそうなるかも 複数チャート作る時に前のチャートを使いまわしたりしてない?
549 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 15:27:53.71 ID:uOX7ULt1.net] 使い回しはしてましたね… グラフ描く回数の分同じ記述を何度もするのが嫌だったから関数にして複数回呼び出せばいいかと思ってた グラフ描画部分の関数に引数として描画シートとか参照するセルの範囲を渡してやってたんだけどそれじゃ駄目だったか
550 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 06:26:35.95 ID:m+SAsqZm.net] ダメってわけじゃないけど気を付けないといけないポイントがある チャートとかのいわゆるオブジェクトのコピーはdeepcopy使う
551 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 11:27:01.85 ID:qLHTxQhk.net] 配布するpyスクリプトで標準外パッケージを使いたいけどユーザの環境を汚したくないというときはvenvのような仮想環境か pyinstallerでまとめるくらいしか手は無いのかな。 どちらもpython.exe自体をコピーして大げさなんで、jsのwebpackみたいなパッケージのバンドルができたらよかったんだけど。
552 名前:デフォルトの名無しさん [2022/03/27(日) 17:22:26.41 ID:nYvTQ02C.net] 質問なんです GIMPのpython使っています # -*- coding: utf-8 -*- import glob,os,re file = glob.glob(‘C:\Users\name\Desktop\*.jpg’) で取り出したファイル名を使ってファイルを開こうとすると ファイル名が日本語の場合文字化けしてファイルが開けませんでした。 文字化けを直すにはどうしたら良いのでしょうか? print(file)した時に文字化け表示される文字は 'C:/Users/name/Desktop\\\x83A\x83\x8a\x83G\x83N\x83`\x83\x83\x83b\x83g\x91\xce\x89\x9e.JPG' こんな感じです よろしくおねがいします
553 名前:デフォルトの名無しさん [2022/03/27(日) 17:44:38.62 ID:p/i0WnQH.net] >>544 >ファイルが開けませんでした。 この時どんなエラーがでましたか?
554 名前:544 [2022/03/27(日) 18:47:55.50 ID:nYvTQ02C.net] >>545 RuntimeError: 'C:\Users\name\Desktop\�A���G�N�`���b�g�Ή�.JPG' を開いて読み込むことができません。 Invalid argument これと詳細な情報のところに Traceback (most recent call last): File "C:\Program Files\GIMP 2\lib\gimp\2.0\python/gimpfu.py", line 740, in response dialog.res = run_script(params) File "C:\Program Files\GIMP 2\lib\gimp\2.0\python/gimpfu.py", line 361, in run_script return apply(function, params) File "C:\Users\name\AppData\Roaming\GIMP\2.10\plug-ins\add_aaaaaaaa.py", line 11, in aaaaaaa
555 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 18:48:39.52 ID:px6SVueC.net] >>544 'C:/Users/name/Desktop\\\x83A\x83\x8a\x83G\x83N\x83`\x83\x83\x83b\x83g\x91\xce\x89\x9e.JPG'.decode("mbcs")
556 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 19:01:26.37 ID:ayYjDlX4.net] >>544 バイナリでglobしてバイナリでopenしてみれば? cp932がutf8の文字列として解釈されてるのが原因だと思う glob(b'*.jpg')
557 名前:544 [2022/03/27(日) 19:04:53.96 ID:nYvTQ02C.net] >>547 ありがとうございます! 無事ファイルが開けてプラグインが完成しました!!
558 名前:544 [2022/03/27(日) 20:00:09.87 ID:nYvTQ02C.net] もう一つ質問で悪いのですが これもGIMPです 数字を文字列にして文章とつなげているのですが その半角数字を全角数字にしようとしましたが エラーが出ます どうしたらいいのでしょうか? コードを書くと書き込めなかったので スクリーンショットを貼ります https://imgur.com/a/F2J1Ksw エラーはこちらです https://imgur.com/a/xv8Hcrt
559 名前:デフォルトの名無しさん [2022/03/27(日) 20:31:27.21 ID:p/i0WnQH.net] >>550 https://ideone.com/ 再現ができないのでここにコードを書いて、そのリンクを貼ってください コードを書いて、Runボタンを押すとリンクが生成されます こんな感じで https://ideone.com/UGO5O1
560 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 20:34:15.47 ID:px6SVueC.net] >>550 gimp2にバンドルされてるpythonは2.7なのでそのコードは使えないね
561 名前:デフォルトの名無しさん [2022/03/27(日) 20:35:54.32 ID:p/i0WnQH.net] Python2か
562 名前:544 [2022/03/27(日) 21:00:21.01 ID:nYvTQ02C.net] >>551 こうですか? https://ideone.com/cKytn2 >>552 python2の場合はどうすればいいですか?
563 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 22:12:37.46 ID:GW1PkVkn.net] python2ってなんだよと思ったら、gimpって開発の勢いがないソフトだったんだな 2007年10月24日 - GIMP 2.4.0 2008年10月1日 - GIMP 2.6.0 2012年5月3日 - GIMP 2.8.0 2018年4月27日 - GIMP 2.10.0 今は2.10.30 Python 3.0は2008年12月3日
564 名前:デフォルトの名無しさん [2022/03/27(日) 22:21:41.23 ID:p/i0WnQH.net] >>554 https://ideone.com/xemuRV これでどうですか
565 名前:544 [2022/03/27(日) 22:34:09.27 ID:nYvTQ02C.net] たびたびすいません、GIMPのモノです。 glob.globが治っていたのが勘違いで 今度はアドレスに日本語が入ってると何も検索してくれなくなりました どうしたらいいですか? >>> glob.glob(b"C:\\Users\\name\\Desktop\\新しいフォルダー\\*.jpg") [] >>> glob.glob("C:\\Users\\name\\Desktop\\新しい\\*.jpg".decode("mbcs")) [] >>556 ありがとうございます! 無事小文字から大文字になりました
566 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 08:06:48.20 ID:bggr0gZp.net] 書き間違いだろ 「新しいフォルダー」と「新しい」のどちらかが、存在しないのでは?
567 名前:デフォルトの名無しさん [2022/03/28(月) 11:24:31.81 ID:xKLASzt7.net] 久しぶりにPython2触ってたら痒くなってきた
568 名前:デフォルトの名無しさん [2022/03/28(月) 17:43:20.16 ID:FxPljt62.net] >>558 すいません地中で名前を変えたので 紛らわしくなりました 年のためもう一度試してみたのですが やはりフォルダー内を検索してくれませんでした
569 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 17:54:40.03 ID:rI7b9so+.net] 解決案じゃなくて恐縮だけど DOSの頃からAPI上のパス区切りはスラッシュで通るのに 入門書やサイトにバックスラッシュで記載あるのなんとかならんかな
570 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 18:42:28.40 ID:zYEeILU0.net] ソースコードをutf8で書いたらいけない、ソースがutf8でなくshiftjisになってる、のどっちかじゃないか
571 名前:544 [2022/03/28(月) 18:59:10.76 ID:FxPljt62.net] 自己解決です folder_path=folder_path.decode("utf-8") にしてみたら日本語でも行けました! お騒がせしてすいませんでした。 >>561 GIMPのコンソールだとglob.glob()の中はバックスラッシュじゃないと反応しなかったです
572 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 19:04:00.69 ID:rI7b9so+.net] >>563 そうなんだ わざわざ試してもらってありがとう Python2のglob実装みてみる
573 名前:デフォルトの名無しさん [2022/03/28(月) 19:27:15.27 ID:FxPljt62.net] >>564 のおかげで バックスラッシュに気づけたので 解決出来ました ありがとうございます >>562 気づかずすいません ありがとうございます! そういう事みたいでした
574 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 19:41:51.56 ID:awWxWPo2.net] u"C:\\Users\\name\\Desktop\\新しいフォルダー\\*.jpg" のように最初からユニコード文字列にするのが正攻法かな でもgimpのpythonコンソールに直に書く時は u"C:\\Users\\name\\Desktop\\\u65b0\u3057\u3044\u30d5\u30a9\u30eb\u30c0\u30fc\\*.jpg" のようにunicodeエスケープしないといけないのが難点 俺環のgimp2.10.30はスラッシュでも問題ないな
575 名前:デフォルトの名無しさん mailto:sage [2022/04/05(火) 03:06:27.47 ID:NFxs7VO2.net] 【悲報】俺が2時間かけて作ったプログラムがこれ [125096601] https://greta.5ch.net/test/read.cgi/poverty/1649069479/
576 名前:デフォルトの名無しさん mailto:sage [2022/04/05(火) 17:14:08.59 ID:EwNP7gad.net] uwscのBETWEENSTRに該当する 指定文字列から、AとBの検索語の間で文字列をカットする関数はありますか?
577 名前:デフォルトの名無しさん mailto:sage [2022/04/05(火) 17:57:12.47 ID:qZGMajZg.net] >>568 https://docs.python.org/ja/3/library/re.html#regular-expression-syntax 正規表現の (?<=...) と (?=…) をつかって re.search() あたり?
578 名前:デフォルトの名無しさん mailto:sage [2022/04/05(火) 18:23:32.74 ID:h0FbB6w5.net] まんま実装してるライブラリも探せばあるんだろうけど、普通は正規表現だろうね python 正規表現 タグの間を取得」とかでぐぐれば
579 名前:デフォルトの名無しさん [2022/04/05(火) 18:27:10.86 ID:/cMxK+XJ.net] zipファイル解凍しなくてもファイル数の確認ができるのだが rarファイルではできないの?
580 名前:デフォルトの名無しさん mailto:sage [2022/04/05(火) 18:59:43.10 ID:EwNP7gad.net] >>569 ありがとうございます labでいろいろ試してみます
581 名前:デフォルトの名無しさん [2022/04/06(水) 00:25:28.29 ID:vOjBJMWB.net] テスト
582 名前:デフォルトの名無しさん [2022/04/06(水) 18:52:36.40 ID:V6m5p1Ce.net] https://www.python.jp/train/loop/index.html を参考にwhile文でクレジットカードのアカウント管理プログラムを作ってみようと思ったんだけど 例えばパイソンクレジットのパスワードはpythonだとして text = "" while text != "パスワード": text = input("パイソンクレジット:") print("python") これで実行は出来たのですが2つ分からないことがあって ・パスワードだけじゃなくてIDや暗証番号などのも設定させたい場合の書き方 ・while文は「パスワード」だけど、これだけじゃなくて「パス」や「pass」でも答えが表示できるようにしたい この2つがどうしてもできません
583 名前:デフォルトの名無しさん [2022/04/06(水) 18:59:11.46 ID:PpwVEMc8.net] >>574 > ・パスワードだけじゃなくてIDや暗証番号などのも設定させたい場合の書き方 IDや暗証番号もinputで取る whileの条件を増やす > ・while文は「パスワード」だけど、これだけじゃなくて「パ
584 名前:X」や「pass」でも答えが表示できるようにしたい while text not in ('パスワード', 'パス','pass'): [] [ここ壊れてます]
585 名前:デフォルトの名無しさん [2022/04/06(水) 19:21:28.09 ID:V6m5p1Ce.net] >>575 後者やってみたけど パスワードpassじゃないと入力できなくなっちゃった 書き方がおかしいのか?
586 名前:デフォルトの名無しさん mailto:sage [2022/04/06(水) 19:48:17.76 ID:aY4pnG+o.net] クォーテーションが全角になってるぞ
587 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 06:43:14.77 ID:wVatZXx3.net] 文字コード=sjis、改行コード=CRLFのテキストファイルを それぞれutf8、LFのファイルに変換したい どうすればいいですか
588 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 12:11:07.10 ID:NfDoLo6c.net] >>578 with open('shift_jis.txt', mode='r', encoding='shift-jis') as f: lines = f.read() with open('utf8.txt', mode='w', newline='¥n') as f: f.write(lines)
589 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 13:41:11.89 ID:bGha8t6H.net] Windows相手なら encoding='cp932' が無難やね
590 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 15:29:47.16 ID:iHIe6oz3.net] Shift-JIS_2004が来やがる事しばしば かと思ったらWindows-1254とかと誤判断
591 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 17:06:38.29 ID:pSQTwr1V.net] cchardet.detect(文字列)['encoding'] で取得した結果をopenのときに投げればいいんじゃないの 意外と使えるよ
592 名前:デフォルトの名無しさん [2022/04/08(金) 17:51:57.12 ID:7I4TuE41.net] anser = input("パスワードは?:") while anser!="パスワード"or"pass"or"パス": print("OK") これでどうしてもエラーが出てしまう
593 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 17:59:24.81 ID:Nr5XXVVB.net] answer...
594 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 18:01:49.89 ID:+3oW9fkF.net] そうですか。次はちゃんと質問しような
595 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 18:07:50.56 ID:bGha8t6H.net] >>> "パスワード" or "pass" or "パス" 'パスワード' 想定してるような集合扱いにはならないのと、先に`answer != "パスワード”`が評価されるから >>> True or "pass" or "パス" True >>> False or "pass" or "パス" 'pass' のどっちかになる。
596 名前:デフォルトの名無しさん [2022/04/08(金) 18:20:28.20 ID:7I4TuE41.net] >>586 ちょっと違うみたいで anser = input("パスワードは?:") while anser!="パスワード"or"pass"or"パス": print("OK") で↑に行を開けると起動するんだけど 今度は無限ループになる上に、while文の"パスワード"or"pass"or"パス"が効かなくなる (enterキーとか適当な文字入力でも OK OK
597 名前:デフォルトの名無しさん [2022/04/08(金) 18:20:44.05 ID:7I4TuE41.net] って無限ループしちゃう
598 名前:デフォルトの名無しさん [2022/04/08(金) 18:25:12.75 ID:o9HNgSR+.net] 質問です。 pyenvの設定をネットで調べると次の2つが見つかりました。 どっちが正しいのでしょうか? (1) echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile # ↑ binになっている echo 'eval "$(pyenv init --path)"' >> ~/.bash_profile source ~/.bash_profile (2) echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile echo 'export PATH="$PYENV_ROOT/shims:$PATH"' >> ~/.bash_profile # ↑ shimsになっている echo 'eval "$(pyenv init --path)"' >> ~/.bash_profile source ~/.bash_profile
599 名前:デフォルトの名無しさん [2022/04/08(金) 18:30:46.90 ID:7I4TuE41.net] 実行環境忘れてた ptyon3.10 IDLE
600 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 18:53:45.66 ID:D6M1QgM/.net] エラーメッセージちゃんと読んでるか?
601 名前:デフォルトの名無しさん [2022/04/08(金) 18:59:35.32 ID:7I4TuE41.net] >>591 expected an indented block after while statement on line 2
602 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:00:25.07 ID:LwBnqH/T.net] >>589 漏れは、Windows 10, WSL2, Ubuntu 18.04 で、 日本人が作った、多言語バージョンマネージャーのanyenv を使っている。 nodenv(Node.js), rbenv(Ruby), jlenv(Julia), tfenv(Terraform)など、20言語ぐらいある。 同様のツールに、asdf もある 漏れは、~/.bash_aliases に、下のように書いている。 export PATH="$HOME/.anyenv/bin:$PATH" eval "$(anyenv init -)" これは、~/.bashrc の終わりの方で、 もし、~/.bash_aliasesが存在するなら、それを読み込むように書いてあるから if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi bash で、下を入力すると、 which ruby ~/.anyenv/envs/rbenv/shims/ruby which node ~/.anyenv/envs/nodenv/shims/node WSL2, Ubuntu 18.04 サーバー(CUI のみ)では、~/.bash_profile は存在しない
603 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:02:02.75 ID:bGha8t6H.net] >>589 https://github.com/pyenv/pyenv#installation まず公式読んで >>592 while True: answer = input('パスワードは?:') if answer in ['パスワード', 'pass', 'パス']: break print('OK') 先にチュートリアルで構文を学ぼ https://docs.python.org/ja/3/tutorial/
604 名前:デフォルトの名無しさん [2022/04/08(金) 19:02:33.34 ID:KIOBCG5Y.net] >>590 そのコード何がしたいかわからん inputパスがあってたら中身表示するとしたら while True: __ans = input('パスは?') __if ans.lower() in ['パス', 'パスワード', 'pass', 'password']: ____中身表示系書く とかだぞ あと評価式でorするときは1から書き直す if a == 1 or a ==2 or ,,, とりあえず君は初心者本1冊完走してから作りたいもの作ろう
605 名前:593 mailto:sage [2022/04/08(金) 19:10:07.84 ID:LwBnqH/T.net] ~/.pyenv/bin/ か、~/.pyenv/shims/ に、 python, python2, python3 の内のどれかは知らないけど、 あるかどうか見てみれば?
606 名前:593 mailto:sage [2022/04/08(金) 19:14:42.64 ID:LwBnqH/T.net] 普通は、多言語バージョンマネージャーのanyenv かasdf を使う。 pyenv だけ使う事はまれ nodenv(Node.js), rbenv(Ruby), jlenv(Julia), tfenv(Terraform)なども使うから それか、Docker。 Windows, WSL2 なら、Docker Desktop
607 名前:デフォルトの名無しさん [2022/04/08(金) 19:15:41.95 ID:7I4TuE41.net] >>594-595 https://www.python.jp/train/loop/index.html 一応このサイト見て勉強してるのですが どうにもうまくいきません…… あとお二人方のコードで試したら、また別なエラーが出ました 作りたかったのは Q パスワードは? A パスワード、パス、pass でAを入力するとOKと表示されるコードでした
608 名前:デフォルトの名無しさん [2022/04/08(金) 19:43:33.96 ID:cn/Cvl0A.net] >>583 自分は、pythonは記憶とんだ。 だから、門外漢だけど、 「"パスワード"or"pass"or"パス"」じゃないなら、ループ。 って、おかしくない? 「"パスワード"or"pass"or"パス"」ならループ。 じゃないの? ループを脱出したら「OKを表示」じゃないの?
609 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:50:24.15 ID:xCRwEkJt.net] >>598 password_list = ['パスワード', 'パス', 'pass'] input_key = input('Enter Your password: ' ) if len(input_key) > 0: for i in password_list: if input_key == i: print('おk') if input_key != i: pass
610 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:55:23.52 ID:cn/Cvl0A.net] 自分の発想のアルゴリズムだと、 アルゴリズム変えなければ、たぶんコメントなしだね・・・・・。
611 名前:589 [2022/04/08(金) 20:16:11.04 ID:o9HNgSR+.net] >>594 レスありがとうございます。
612 名前:デフォルトの名無しさん [2022/04/08(金) 20:24:09.51 ID:KIOBCG5Y.net] >>598 本当に作りたいのがそれだけなら passlist = ['a', 'b' , 'c'] if input('password ? ') in passlist: __print('ok') なんよ とりあえず落ち着け。作りたいもの置いといて、基礎を学ぶのだ 今のままじゃ多分全部聞いて、全部身にならない
613 名前:デフォルトの名無しさん [2022/04/08(金) 20:47:17.17 ID:7I4TuE41.net] >>603 上に上げたサイトだとローカル巻数とグローバル巻数の部分まで来たんですが ここがどうしても意味不明です
614 名前:デフォルトの名無しさん [2022/04/08(金) 20:57:37.08 ID:L/LJ1T8Z.net] >>604 お前にはプログラミングは無理だ
615 名前:デフォルトの名無しさん [2022/04/08(金) 21:39:05.15 ID:7I4TuE41.net] まずIDLEだとインデントが上手くいかない 最後のprintだけスペース戻したらエラーになる