[英]Python run another script from a python script
def run_cmd(self, cmd):
print cmd
status = os.system(cmd)
print 'Command ran with Status: %s' % status
if status:
s = 'Command Failed: Status: %s for %s' % (status, cmd)
print s
sys.exit(status)
else:
s = 'Command Success: %s' % cmd
return status
我正在使用此函數從另一個腳本運行python腳本。
例如:
command_to_exec = 'python script_b.py'
run_cmd(command_to_exec)
現在,如果script_b.py失敗,則script_a.py會以狀態退出。
沒關系。
案例2 :
command_to_exec = 'python script_a.py --options'
rum_cmd(command_to_exec)
這種情況是自己運行'python script_a.py'的script_a.py。 在這種情況下,如果新生成的script_a.py失敗,則外部script_a.py仍然成功,因為它無法捕獲內部script_a.py的失敗(因為sys.exit(status))
現在,我該如何處理這種情況? (如果內部script_a失敗,外部script_a應退出)
您可以將其他腳本作為模塊運行。 假設你有這個文件夾:
DIR
| --- main.py
| --- imported.py
你想從第一個開始運行第二個。 只需使用import
,就像那樣:
import imported #the file name without the extension
它將運行該文件,您將能夠在主腳本中使用它的變量和函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.