[英]adding directory to sys.path /PYTHONPATH
我正在尝试从特定目录导入模块。
问题是如果我使用sys.path.append(mod_directory)
追加路径然后打开python解释器,目录mod_directory
将被添加到列表sys.path的末尾。 如果在打开python解释器之前导出PYTHONPATH
变量,则该目录将添加到列表的开头。 在后一种情况下,我可以导入模块,但在前者,我不能。
有人可以解释为什么发生这种情况,给我一个解决添加mod_directory
的开始,一个python脚本里面 ?
你可以使用:
import os
path = 'the path you want'
os.environ['PATH'] += ':'+path
暂时改变目录适用于导入:
cwd = os.getcwd()
os.chdir(<module_path>)
import <module>
os.chdir(cwd)
在Windows下从Powershell运行Python脚本时,这应该有效:
$pathToSourceRoot = "C:/Users/Steve/YourCode"
$env:PYTHONPATH = "$($pathToSourceRoot);$($pathToSourceRoot)/subdirs_if_required"
# Now run the actual script
python your_script.py
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.