将变量从一个 python 脚本导入到另一个

将变量从一个 python 脚本导入到另一个

问题描述:

我有 script1.py 调用 script2.py (subprocess.call([sys.executable, "script2.py"]).但是 script2.py 需要 script1.py 中已知的变量 x.我尝试了一个非常简单的 import x from script1,但它似乎不起作用.

I have script1.py which calls script2.py (subprocess.call([sys.executable, "script2.py"]). But script2.py needs variable x that is known in script1.py. I tried a very simple import x from script1, but it seems not to work.

这是正确的使用方法吗?例如:

Is that the right approach to use? For example:

#script1.py
import subprocess, sys
##subprocess.call([sys.executable, 'C:\\...\\Desktop\\script2.py'], shell=True)
##os.system("C:\\...\\Desktop\\script2.py")
subprocess.Popen("C:\\...\\Desktop\\script2.py", shell=True)
print "BLAH"
x = BO

#script2.py
from script1 import x
print "HELLO"
print x

调用 script2 的所有 3 种情况(subprocess.call、os.system、subprocess.Popen)都不起作用.我得到BLAH"但不是HELLO".

All 3 cases of calling script2 (subprocess.call, os.system, subprocess.Popen ) do not work. I get "BLAH" but not "HELLO".

正确的语法是:

from script1 import x

所以,从字面上看,从 script1.py 导入x"对象."

So, literally, "from script1.py import the "x" object."