時にPYTHONPATHを追加します。私は自分の環境変数に追加することはできません。なぜなら、私が実行しているプロジェクトに基づいて変更を加えたいからです。スクリプトを実行しているときにPYTHONPATH
を変更する方法はありますか?注:私はPYTHONPATH
変数も持っていないので、このスクリプトを実行している間にそれを上書きすることを心配する必要はありません。Pythonは、私が実行したいコマンド・ライン・モジュールの実行
答えて
Mac/Linuxの場合;
PYTHONPATH=/foo/bar/baz python somescript.py somecommand
Windowsの場合は、ラッパーを設定してください。pythonpath.bat
;
@ECHO OFF
setlocal
set PYTHONPATH=%1
python %2 %3
endlocal
pythonpath.bat
のようなスクリプトファイル。
pythonpath.bat /foo/bar/baz somescript.py somecommand
import sys
sys.path.append('your certain directory')
基本的のsys.pathはPythonのモジュールのすべての検索パスを持つリストです。インタプリタによって初期化されます。 PYTHONPATHの内容は自動的にそのリストの最後に追加されます。
あなたはbash
のように、POSIX準拠のシェルからコマンドを実行している場合、あなたはこのような環境変数を設定することができますが:
PYTHONPATH="/path/to" python somescript.py somecommand
が1行にすべてのなら、PYTHONPATH環境値のみに適用されますその1つのコマンド。
$ echo $PYTHONPATH
$ python -c 'import sys;print("/tmp/pydir" in sys.path)'
False
$ PYTHONPATH=/tmp/pydir python -c 'import sys;print("/tmp/pydir" in sys.path)'
True
$ echo $PYTHONPATH
私が探していたもの、ありがとうございました。何らかの理由で 'python -c 'import sys; sys.path.insert(0、' my/path '); import mymodule' 'が動作しませんでした。 –
これは、Windows用です:たとえば
、私は自分のデスクトップ上の "mygrapher" という名前のフォルダを持っています。内部には、メインファイル "grapherMain.py"が必要とするPythonファイルを含む "計算"と "グラフ"というフォルダがあります。また、 "graphing"には "grapherMain.py"が格納されています。ファイルを移動せずにすべてを実行するには、バッチスクリプトを作成できます。このバッチファイルを "rungraph.bat"としましょう。
@ECHO OFF
setlocal
set PYTHONPATH=%cd%\grapher;%cd%\calculation
python %cd%\grapher\grapherMain.py
endlocal
このスクリプトは "mygrapher"にあります。物事を実行するには、私はそれからやる、私のコマンドプロンプトになるだろう:
>cd Desktop\mygrapher (this navigates into the "mygrapher" folder)
>rungraph.bat (this executes the batch file)
とこれは@İsmail 'cartman'Dönmezとどのように異なるのですか? –
は、あなたのスクリプトイスマイル@
python -c "import sys; sys.path.append('/your/script/path'); import yourscript; yourscript.yourfunction()"
- 1. 私はPythonスクリプトからこのコマンドを実行したいのPythonスクリプトから
- 2. Pythonのコマンド実行出力
- 3. シェルスクリプト:シェルスクリプトでexitコマンドを実行した後でコマンドを実行
- 4. これは私が実行しているコマンドです
- 5. Python unittesting:別のモジュールでテストを実行
- 6. モジュールからの移行がyiic migrateコマンドによって実行されない
- 7. tox sudoのpythonコマンドを実行する
- 8. 実行]コマンド() - PHP
- 9. Pythonを使用したTomcat CGIでのコマンドの実行
- 10. MongoDBのエラーは、私が最初のコマンドを実行し、サーバー
- 11. Pythonから順番にコマンドを実行
- 12. Pythonスクリプトにbashコマンドを実行
- 13. python-paramiko - バックグラウンドでコマンドを実行
- 14. Pythonからlinuxコマンドを実行する
- 15. コマンド実行後にカスタムコードを実行
- 16. 実行Bashのコマンドは、PHP
- 17. pyc拡張子を持たないpythonモジュールを実行する
- 18. python:コマンドで変数を使用してjavaコマンドを実行
- 19. Pythonで実行中のコマンドを終了しています
- 20. C#のは、次のように私は、コマンドプロンプトのコマンドを実行していますシェルコマンドを実行し、
- 21. CoffeeScript TextMate実行コマンド
- 22. Sevlet + Shellコマンド実行
- 23. Pythonは私が$セットにxに対して のように、ループのために2つのコマンドを実行し、
- 24. "systeminfo" cmdコマンドを実行中WaitForExitが続行しない
- 25. bash:n分のコマンドを実行してからSIGHUPを実行
- 26. AptanaはPythonモジュールを実行させません。どうして?
- 27. os.system()コマンドを実行して、Linuxシェルを実行しますか?
- 28. Mavenの実行者:私はMavenのからプログラムのコマンドを実行して必要IllegalStateExceptionが
- 29. 実行バッチファイルには、私はそれが上のユーザーがログインする前に、以下を実行していたバッチファイルを実行したいVLCのWebインタフェース
- 30. nohupでコマンドを実行すると、nohupでコマンドを実行するとバックグラウンドで実行されるため、バックグラウンドでnohupを使用して実行します。
内の機能を実行するために、これを試してください - 感謝。しかし、私はコマンドプロンプトからスクリプトを実行している間にそれをどうやって行うことができますか?私は、Pythonを実行していない、ものをインポートし、手動でそれを実行しています。 – orokusaki
Mac/Linuxでは 'PYTHONPATH =/foo/bar python somescript.py somecommand'を実行します。 – ismail
私は' python -c "import sys; sys.path.append( '/ my/dir')' 'を実行してから' python myscript.py mycommand'を実行しますが、明らかに最初のインタープリタセッションから次のインタープリタセッションへのパスは共有されません。ああ、ちょうどあなたの次のコメントを見て、今しよう... WinXPで動作しませんでした。 – orokusaki