edd*_*uld 2 python import module path
是否可以从一个位置运行python脚本,但让脚本执行就像它位于其他位置一样(因此导入等都按预期工作).
我的情况是这样的:
foo.py/opt/foo那里有一堆包/模块foo.py然后导入cd /opt/foo/bin && python foo.py我希望能够复制只是 foo.py以/tmp与运行它cd /tmp && python foo.py.我希望它能像foo.py生活在下面一样执行/opt/foo/bin.如果需要,我可以修改foo.pyunder /tmp.
希望这对某人有意义.修改foo.pyunder /opt/foo/bin不是一个选项.一种可能性可能是在/tmpie 下创建一个文件夹,/tmp/foo除了符号之外的所有内容foo.py,但是我希望有一种更简单的方法来实现我想要的!
以下是Python在导入模块时如何搜索模块的说明.您的问题的一个解决方案是将目录/ opt/foo/bin添加到PYTHONPATH.您还可以在foo.py中修改路径以查找模块,例如
import sys
sys.path.append('/opt/foo/bin')
import foo
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
169 次 |
| 最近记录: |