python - 设置 python 管道 - python 子进程

标签 python python-2.7

使用子进程在 python 中完成以下管道的最佳方法是什么:

  1. 并行运行三个脚本文件 python1_a.py、python1_b.py、python1_c.py
  2. 如果没有出现错误,则运行 python2.py
  3. 如果没有出现错误,则运行 python3.py

此外,我想通过 argprase 传递参数。

注意:这些文件中有打印语句来公开进度 - 记录它们的最佳方法是什么?

如果您能用示例代码回答那就太好了

最佳答案

并行运行:

import subprocess

proc = []
for script in (['python1_a.py', 'arg1'], ['python1_b.py', 'arg2'], ['python1_c.py', 'argx']):
    p = subprocess.Popen(script)
    proc.append(p)

for p in proc:
    p.wait() 

然后简单地说:

ret = subprocess.call('python2.py arg1 arg2', shell=True)
if not ret:
    subprocess.call('python3.py arg1 arg2', shell=True)

关于python - 设置 python 管道 - python 子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48957481/

相关文章:

python - 如何用Python方式提高列表理解能力

python - 如何使 STATIC_URL 在外部 JS 文件中工作 (Django)

python - Wtforms:添加具有多重继承的动态字段

python - 无法从卡住中安装 pip

python - 合并嵌套列表,将列(位于同一索引处的元素)放在一起

python - 为什么这是一个无限循环

python - 快速生成 10,000 个随机整数元组

python - 是否可以并行化 bz2 的解压?

Python:递归返回无值

python - 多项式回归不起作用