繁体   English   中英

依次运行多个python脚本

[英]Running multiple python scripts in a sequence

我想按顺序执行脚本,每个脚本之间都有时间延迟。

目的是运行脚本,该脚本扫描文件名中的字符串并将这些文件导入文件夹。 时间延迟是为了让脚本有时间在移至下一个文件之前完成文件的复制。

我已经尝试过在Stackoverflow上提出的问题:

运行多个Python脚本

从另一个python脚本运行python脚本,并传入args

但是我不明白为什么下面的行不起作用。

import time
import subprocess

subprocess.call(r'C:\Users\User\Documents\get summary into folder.py', shell=True)
time.sleep(100)
subprocess.call(r'C:\Users\User\Documents\get summaries into folder.py', shell=True)
time.sleep(100)

该脚本会打开文件,但不会运行。

首先, time.sleep接受了几秒钟作为参数,因此,在生成这两个进程之后,您等待了100秒钟,我想您的意思是.100 无论如何,如果只想同步运行您的2个脚本,最好使用subprocess.Popen.wait ,这样就不必等待不必要的时间,例如以下示例:

import time
import subprocess

test_cmd = "".join([
    "import time;",
    "print('starting script{}...');",
    "time.sleep(1);",
    "print('script{} done.')"
])

for i in range(2):
    subprocess.Popen(
        ["python", "-c", test_cmd.format(*[str(i)] * 2)], shell=True).wait()
    print('-'*80)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM