簡體   English   中英

如何在python的子進程中執行一組語句?

[英]How to execute a set of statements in child process in python?

我想在子進程中的python腳本中執行一組由shell和python代碼組合而成的語句。 我正在使用 subprocess.call() 方法,但它只需要一個 shell 命令作為輸入。 我想在子進程中的shell命令之后執行一些python代碼,並在shell+python代碼執行完成后退出子進程。

command = "./darknet detector demo cfg/coco.data cfg/yolov3-tiny.cfg yolov3-tiny.weights {0}".format(latest_subdir)
proc = subprocess.Popen([command], stdout=subprocess.PIPE, shell=True)
(out, err) = proc.communicate()
with open(result_file, 'w') as fout:
    fout.write(out)
os.system('mv {0} {1}'.format(latest_subdir,processed_dir))
s3_util.upload_results([result_file])

當您向os.system發送字符串時,您將使用系統命令外殼的語法。 例如,這在 Linux 上工作得很好:

os.system('ls; wc -l so.py; echo "done"')

用分號分隔命令。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM