首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使python文件并行运行其他2个python文件

无法使python文件并行运行其他2个python文件
EN

Stack Overflow用户
提问于 2019-10-04 22:28:07
回答 2查看 67关注 0票数 0

因此,我一直试图让hours..DAYS找出一个代码来同时运行2个python文件。

我尝试过子进程,多进程,bash等等,我一定是做错了什么,我只是不知道是什么。

我有两个python文件,我想并行地运行它们,但是请注意,它们都没有结束。当第一个文件打开并运行时,我希望运行第二个文件。

我尝试过的所有内容都只打开第一个文件并停止,因为脚本应该24/7运行。请注意,当我尝试使用单独的bash文件时,由于某种原因,它在git上打开,然后关闭,什么也不做。我现在真的很绝望,ngl

请提供详细的答案与代码,因为我一直在扫描整个互联网(包括StackOverflow),我已经尝试了一切,似乎没有任何工作。

代码语言:javascript
复制
import subprocess
import LemonBot_General
import LemonBot_Time
import multiprocessing

def worker(file):
  subprocess.Popen(["python3 LemonBot_Time.py"], stdout=subprocess.PIPE)
  subprocess.Popen(["python3 LemonBot_General.py"],stdout=subprocess.PIPE)

if __name__ == '__main__':
    files = ["LemonBot_General.py","LemonBot_Time.py"]
    for i in files:
        p = multiprocessing.Process(target=worker, args=(i,))
        p.start()

这是我最近一次尝试但没有成功..。我还单独尝试了子进程命令,但这也不起作用。Bash文件也不起作用。

编辑:两个文件都没有完成。我想并行运行它们。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-04 22:52:51

您应该能够从子进程中使用Popen。为我工作过。如果删除p.wait()行,第二个文件将在该第一个文件完成后立即退出。

代码语言:javascript
复制
import time
import subprocess

p = subprocess.Popen(['python', 'test_file.py'])

time.sleep(5)
print("Working well")

p.wait() 
票数 0
EN

Stack Overflow用户

发布于 2019-10-04 22:35:27

在每个文件的os.system()命令中使用threading.thread(‘python3 myprogram.py')命令。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58243776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档