【问题标题】:PYTHONPATH as agrument to python interpreterPYTHONPATH 作为 Python 解释器的参数
【发布时间】:2012-04-06 13:48:52
【问题描述】:

我想将 PYTHONPATH 作为参数传递给 python.exe,就像我可以在 java 中那样:

java -classpath /somedir/some.jar;/anotherdir MyClass

所以我正在寻找类似的东西:

python -PYTHONPATH /somedir/pythonsrc;/anotherdir/pythonsrc mymodule.py

在 python 中可以做这样的思考吗? 谢谢

【问题讨论】:

  • 那是不可能的,但为什么不使用旧好的set PYTHONPATH=...
  • 那是因为我有多个 python 应用程序,我想要一个简单的命令行(不是“花哨”的批处理脚本,因为它们有自己的缺点)我想要一个简单的命令行来运行我的每个应用程序图书馆!在我看来,这似乎是程序语言的第一个要求,我在 java 中使用了很多,java -cp mylibraries myclass。我有多个不同语言的 python 应用程序!我需要用自己的命令行运行每个 - 没有批处理脚本!!!我觉得难以置信,没有这样的选择!你能帮忙吗?
  • 这个问题仍然相关。我有一个 bash 脚本,它生成一个子进程来运行 Python 并将其输出提供给另一个 Python 进程。显式设置不同的PYTHONPATHs 会很棒,因为我的“通用”PYTHONPATH 包含一个相对路径(. - 总是很高兴,但可能会干扰其他库)但它们在不同的目录中执行。但是,这仍然是不可能的。

标签: python windows command-line


【解决方案1】:

尝试在启动python之前设置环境变量PYTHONPATH:

在窗户上:

set PYTHONPATH=/somedir/pythonsrc;/anotherdir/pythonsrc && python.exe mymodule.py

在 unix 上

PYTHONPATH=/somedir/pythonsrc:/anotherdir/pythonsrc python mymodule.py

【讨论】:

  • 您可以使用PYTHONPATH=... python mymodule.py 为该调用设置变量。
【解决方案2】:

使用/C 选项启动一个新的shell。

cmd.exe /C "set PYTHONPATH=/somedir/pythonsrc && python.exe mymoudle.py"

【讨论】:

    猜你喜欢
    • 2015-10-11
    • 2010-12-01
    • 2019-04-10
    • 2013-09-07
    • 2015-04-04
    • 1970-01-01
    • 2018-11-10
    • 2017-04-07
    • 1970-01-01
    相关资源
    最近更新 更多