我的代码是:
import scriptlib.abc
import scriptlib.xyz
def foo():
... some operations
但是scriptlib位于其他目录中,因此我必须将该目录包含在环境变量“PYTHONPATH”中。
在执行import语句之前,是否可以首先在环境变量“PYTHONPATH”中添加scriptlib目录,如下所示:
import sys
sys.path.append('/mypath/scriptlib')
import scriptlib.abc
import scriptlib.xyz
def foo():
... some operations
如果是,则该值是仅用于该命令提示符还是全局值?
提前谢谢
这将添加到Python进程/实例的路径(即正在运行的可执行文件)。不会为任何其他Python进程修改路径。另一个正在运行的Python程序的路径将不会被修改,如果退出程序并再次运行,则该路径将不包括以前添加的内容。你所做的大体上是正确的。
套装:
循环.py
运行:
python loop.py &
这将运行loop.py,连接到STDOUT,并且它将继续在后台运行。然后可以运行
python set.py
。每个都有一组不同的环境变量。注意,来自loop.py
的输出不会改变,因为set.py
不会改变loop.py
的环境。关于导入的说明
Python导入是动态的,与语言的其他部分一样。不存在静态链接。导入是一个可执行行,就像
sys.path.append...
。如文件here中所述。
转到
Python X.X/Lib
并将这些行添加到那里的site.py
这将更改您的
sys.path
以便在每次加载时,它都具有该值。。如here关于
site.py
所述有关向
sys.path
添加某些路径的其他可能方法,请参见these docs相关问题 更多 >
编程相关推荐