你有包裝python腳本調用另一個python腳本,目前使用os.system('python another.py some-params')
。如何從你的腳本執行另一個python腳本並且能夠調試?
您希望能夠對兩個腳本進行調試,並且如果您使用os.system()
則會丟失調試器,因此使用同一個解釋器加載第二個腳本而不是啓動另一個腳本是有意義的。
import
不符合預期的事情,因爲它不運行__main__
。
其他變體,如exec()
或runpy
接縫錯過argv
參數。
你看到這個問題的解決方案是什麼?
我正在尋找一個不需要您修改another.py
腳本的解決方案。在執行它之前,可能需要修改sys.argv
。
在非解決方案中,您還有'execfile()',這在其他情況下可能很有用。 – EOL 2010-09-07 14:44:13
我忘記了'execfile()',我會測試它是否運行'__main__',這是非常重要的。 – sorin 2010-09-07 20:09:35