如何从其他脚本运行Python脚本并将其根目录设为我的根目录?
我有一个模块“B”,我想从一个脚本“C”中运行它,并且我希望在“B”中调用全局变量,就像它们在“C”的根目录下那样。还有一个问题是,如果我在“B”中导入了sys
,当我运行“C”时,它却看不到sys
。
# NameError: global name 'sys' is not defined #
我该怎么办?
2 个回答
1
你的PYTHON_PATH里面有这个吗?
如果没有的话,在脚本C的init.py文件里
import os, sys
sys.path.append('/PATH/TO/MODULE/B')
然后,在模块C里面
from B import *
something_defined_in_B()
5
当你导入一个模块 B
(比如说用 import B
),模块 B
里的每一行代码都会被执行。我想这就是你所说的“想要运行它”的意思。要引用 B
中的成员,你可以这样获取:
B.something_defined_in_B
。
如果你想在 C
中明确使用 sys
,你也需要在 C
中导入它。