我正在使用用Python編寫的腳本,它使用argparse模塊從命令行獲取它的參數。我試圖儘可能少地修改這個文件,因爲不同的人都在使用它。從另一個python腳本調用面向命令行的腳本
例:腳本稱爲CLscript.py和我一起
python CLscript.py -option1 arg1 -flag1 -option2 arg2
叫它但我面對的,我想自動化的事情之一水平,並自動與廣泛的啓動此腳本的情況下腳本生成的參數。
我想繼續使用此腳本中可用的所有選項和標誌的現有組織。
例如,當我從topLevelScript.py貫穿CLscript.py:
subprocess.call("python CLscript.py -option1 arg1 -flag1 -option2 arg2")
,我是從輸出事情錯看,我停止執行topLevelScript.py,但CLscript。 py繼續在另一個需要手動殺死的python進程中獨立運行。我不能在調試模式下啓動topLevelScript.py以停止CLscript.py中的斷點。
我想在python裏面做所有這些,而不用建立一個命令行字符串並用子進程啓動CLscript.py。 每次調用都將保持與原始啓動相同,就像函數調用一樣,不會像創建subprocess.call()一樣創建多個python線程。
有點像傳遞一個字符串列表的選項,標誌和參數莫名其妙的腳本也許?
有什麼樣
import CLscript.py
CLsimulator(CLscript,["-option1",arg1,"-flag1","-option2",arg2])
「創建多個python線程就像使用subprocess.call()」 - 「subprocess」模塊與線程無關。 – ElmoVanKielmo
其實我不是很清楚你想要做什麼,請你詳細說明一下還是舉個例子? – lowitty
「類似於傳遞帶有選項,標誌和參數的字符串列表」 - 「subprocess.call()」的第一個參數是字符串列表。 – ElmoVanKielmo