2014-10-19 23:38:42 +0000 2014-10-19 23:38:42 +0000
41
41

Pythonスクリプトを明示的に `python` を呼び出さずに実行する

Debian Linuxを使っています。

script.pypython script.pyの代わりに)と入力してターミナルでallのPythonスクリプトを実行するように設定する方法はないかと思っていました。

回答 (4)

60
60
60
2014-10-19 23:47:44 +0000
  • ファイルが実行可能であることを確認してください。chmod +x script.py
  • カーネルにどのインタプリタを使用するかを知らせるために shebang を使用してください。スクリプトの一番上の行は次のように読むべきです:

これでタイプできます。スクリプトがカレントディレクトリにある場合は

./script.py

と入力してください。

script.py

と入力してください。

path/to/script.py

それ以外の場合。

33
33
33
2014-10-19 23:58:24 +0000

linuxではhashbang(別名shebang)を使うことができます。デフォルトの python インタプリタを実行したい場合は、

#!/usr/bin/python

という行を追加してください。

#!/path/to/python[x.x]
#!/usr/bin/env python
``` スクリプトを実行可能にする必要があります。
3
3
3
2017-10-31 18:09:01 +0000

Use:

#!/usr/bin/env python

これは、ユーザが使用すると予想される python がスクリプトを実行するものであることを保証します。これは、ユーザが特定の環境で特定のバージョンの python を使用するために virtualenv を使用している場合に特に重要です。

0
0
0
2018-04-08 19:22:47 +0000

以下のようにスクリプトの先頭に shebang 行を使用してください。

!/usr/bin/python

スクリプトを実行したいpythonのバージョンを更新してください。例: python 3.6の場合は

!/usr/bin/python3.6

デフォルトインタプリタの場合

!/usr/bin/python

注意: スクリプトが実行可能な権限を持っていることを確認してください。

関連する質問

6
10
5
37
3