Python新手在这里。与execfile中的对象进行交互/ subprocess.call在Python文件中带参数
我想与需要其数据参数的python文件中的变量/对象进行交互。 比方说,我只能从参数中获取这些数据,而不是制作一个包含将要传递的参数的脚本(这意味着我必须使用execfile或subprocess.call)。
比方说,这是我的Python文件,foo.py:
bar = 123
print("ran foo.py, bar = %d" % bar)
当然,会有更多的解析参数的文件,但是这是无关紧要的。现在
,在Python壳(Python或IPython的在终端中):
>>> import subprocess
>>> subprocess.call("python foo.py 'args'", shell=True)
ran foo.py, bar = 123
0
>>> bar
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'bar' is not defined
如以上的例子所示输出,棒不会从foo.py.标准输出之后定义
有没有办法与execfile或subprocess.call调用的python文件中的变量或数据对象进行交互?通常我会在REPL中进行评估或在IDE中运行,以便在执行后可以测试值和对象,但我无法弄清楚如何使用从分析的参数构建数据的python文件执行此操作。
有谁知道我该怎么做?无论如何感谢您的考虑。