76
A
回答
128
您不设置PYTHONPATH
,您将条目添加到sys.path
。这是一个应该搜索Python包的目录列表,所以你可以将你的目录追加到列表中。
sys.path.append('/path/to/whatever')
事实上,sys.path
通过在路径分隔符(:
在类Linux系统,;
在Windows上)分裂的PYTHONPATH
值初始化。
您还可以使用site.addsitedir
添加目录,并且该方法还会考虑您传递的目录中存在的.pth
文件。 (这不会与你的目录中PYTHONPATH
指定的情况下)。
25
您可以通过os.environ
获取和设置环境变量:
import os
user_home = os.environ["HOME"]
os.environ["PYTHONPATH"] = "..."
但你的解释已经运行,这不会有任何效果。你最好使用
import sys
sys.path.append("...")
这是数组,你PYTHONPATH
将转化为对翻译的启动。
4
9
对不起,重新讨论这个问题,但我认为它可以帮助别人:
如果你把sys.path.append('dir/to/path')
没有检查它已添加,可以产生sys.path
一个长长的清单。为此,我推荐:
import sys
import os # if you want this directory
try:
sys.path.index('/dir/path') # Or os.getcwd() for this directory
except ValueError:
sys.path.append('/dir/path') # Or os.getcwd() for this directory
对不起,如果我惹恼某人重新开放问题。
+0
不错。非常Pythonic。 – PartialOrder 2017-07-17 19:00:24
0
你可以设置PYTHONPATH
,通过os.environ['PATHPYTHON']=/some/path
,那么你需要调用os.system('python')
来重新启动python shell来使新添加的路径生效。
相关问题
- 1. PythonPath和Python配置脚本
- 2. 设置PYTHONPATH和运行Python脚本在bash
- 3. 如何在Windows中设置PYTHONPATH?
- 4. 如何设置本地python库目录/ PYTHONPATH?
- 5. 在emacs中设置适当版本的Python和PYTHONPATH变量
- 6. 在OS X中设置pythonpath
- 7. 在SublimeText2中设置PYTHONPATH
- 8. 如何从Python脚本调用Python + PYTHONPATH + virtualenv?
- 9. 如何在Cygwin上设置PYTHONPATH?
- 10. 主管 - 运行python脚本PYTHONPATH问题
- 11. Python脚本显示了不同PYTHONPATH
- 12. pip设置和设置PYTHONPATH
- 13. 如何设置从python脚本
- 14. 无法设置PYTHONPATH在PyCharm
- 15. 设置PYTHONPATH和PYTHONHOME
- 16. 如何为版本2和版本3设置不同的PYTHONPATH?
- 17. 设置与bash脚本PYTHONPATH和运行nosetests
- 18. 设置为Python脚本
- 19. 如何在Python脚本中将useragent设置为QuickTime?
- 20. 如何在Python中的Selenium Webdriver上设置脚本超时?
- 21. 如何设置Python脚本以在Apache 2.0中工作?
- 22. 如何在python脚本中设置环境变量
- 23. 如何在python脚本中设置Linux用户密码?
- 24. VCS和Python项目结构:如何自动设置PYTHONPATH?
- 25. 在MacOS上的Emacs中设置PYTHONPATH?
- 26. 从python脚本设置ORACLE_HOME在UNIX
- 27. 用python路径设置python脚本shebang
- 28. Python - PythonPath
- 29. OSX永久设置PYTHONPATH
- 30. 设置python脚本的输出位置
这个答案发布已经很多年了,但我仍然想补充一点,如果你想确保Python在导入之前检查新目录,你应该把新目录放在第一个列表,如'sys.path.insert(0,'/ path/to/whatever')'。 – wecsam 2017-06-15 16:22:40