要在Java中指定类路径,我使用-cp
或-classpath
选项java
。 Python中的等效选项是什么?
我知道我可以设置操作系统变量PYTHONPATH
,但不应该有一个PYTHONPATH
来统治它们。
我有时在Eclipse中使用PyDev。它可以处理多个源目录。怎么样?
我经常有多个源目录。有时我将生产和测试代码分开。有时我有一个带有一些Python包的Git子模块。
答案 0 :(得分:4)
要在Java中指定类路径,我使用-cp或-classpath选项 到java。 Python中的等效选项是什么?
嗯,没有"等效选项"在我所知道的Python中,但是任何类似Unix的shell都允许你在每个进程的基础上设置/覆盖它,如果你像这样运行Python ......
$ PYTHONPATH=/put/path/here python myscript.py
...一种语法,您也可以将其用于Java ...
$ CLASSPATH=/put/path/here java MyMainClass
最接近Windows的Windows将是......
> cmd /c "set PYTHONPATH=\put\path\here && python myscript.py"
...如果您不希望在调用cmd.exe
中设置环境变量。
我有时在Eclipse中使用PyDev。它可以处理多个来源 目录。怎么样?
运行代码时,可能会通过在execve(2)
调用中设置变量来执行类似操作。
答案 1 :(得分:1)
这是virtualenv的用途。
答案 2 :(得分:1)
要以编程方式执行此操作,请使用以下代码:
import sys
sys.path.append('directory')
如有必要,您可以从命令行参数指定要追加的目录。
根据您的目标究竟是什么,这可能不是最佳解决方案,但对于小型一次性问题,它可以正常工作。