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文件執行此操作。
有誰知道我該怎麼做?無論如何感謝您的考慮。