• 締切済み

Python goto文を使うには

Python 3.7.3で以下のようにgoto文を使いたいのですが モジュールは何をインストールすればよいでしょうか。 必要ならば1行目は別の記述でも構いません。 ---------------------------- from goto import goto, label label .A x=input('値を入力してください') if x!=0 : goto .A print('END') ----------------------------- (Windows10,Python 3.7.3)

みんなの回答

  • slpanda
  • ベストアンサー率76% (10/13)
回答No.2

そのエラーの表示部分が例外処理を書いた部分だと思いますが、raiseの書き方がいまとちがっているようで、Python 2のそれも結構ふるいバージョンの書き方みたいです。 raise MissingLabelError, "Missing label: %s" % targetLabel コメントを除くと空白行も入れて100行ほどのようですので、どうしてもひつようならばPython3でエラーがでないように修正したらどうでしょうか。

  • slpanda
  • ベストアンサー率76% (10/13)
回答No.1

そもそもPythonにはgotoはありません。だからpipではインストールできません。ただ、一応モジュールがあることはあります。 http://entrian.com/goto/download.html ここにかいてありますが、これはエイプリルフール用のジョークモジュール(たぶんPythonって実はgotoつかえるんだぞ、って人を驚かせる用?)なので、実際のプログラミングには使わないで、とありますので、公式モジュールではないから手動インストールが必要です。 もし、多重ループから抜けたいということだけでしたら、下記のようなページを参考にしてbreakを使うか、いずれにしてもgotoを使うのは避けた方が良いと思います。 https://www.sejuku.net/blog/23035

yam2012
質問者

お礼

回答ありがとうございます。 gotoはできるだけ使わないようにしますが どうしてもできないときのために使えるようにしておきたいです。 教えて頂きましたモジュール goto-1.0.zip (with Windows line endings) を解凍してpython setup.py installでインストールしようとしましたが 以下のエラーになりますが、この原因は分かりますでしょうか。 ------------------------------------------------------ C:\Users\xxx\AppData\Local\Programs\Python\Python37\goto-1.0>python setup.py install running install running build running build_py creating build creating build\lib copying goto.py -> build\lib running install_lib byte-compiling C:\Users\xxxx\AppData\Local\Programs\Python\Python37\Lib\site-packages\goto.py to goto.cpython-37.pyc File "C:\Users\xxxx\AppData\Local\Programs\Python\Python37\Lib\site-packages\goto.py", line 271 raise MissingLabelError, "Missing label: %s" % targetLabel ^ SyntaxError: invalid syntax running install_egg_info removing 'C:\Users\xxxx\AppData\Local\Programs\Python\Python37\Lib\site-packages\goto-1.0-py3.7.egg-info' (and everything under it) Writing C:\Users\xxxx\AppData\Local\Programs\Python\Python37\Lib\site-packages\goto-1.0-py3.7.egg-info C:\Users\xxxx\AppData\Local\Programs\Python\Python37\goto-1.0> ------------------------------------------------------ よろしくお願いします。

yam2012
質問者

補足

追記: ----goto-1.0-py3.7.egg-info---- Metadata-Version: 1.0 Name: goto Version: 1.0 Summary: UNKNOWN Home-page: UNKNOWN Author: UNKNOWN Author-email: UNKNOWN License: UNKNOWN Description: UNKNOWN Platform: UNKNOWN ------------------------------