Python Popen()不在脚本中工作,但在解释器中工作

Python Popen()不在脚本中工作,但在解释器中工作,python,multiprocessing,popen,Python,Multiprocessing,Popen,我有一个脚本action.py,它将文件名作为命令行参数,并对该文件进行一些处理。 我想使用不同的输入文件多次运行此脚本。我使用了Popen()命令来运行脚本,该脚本在解释器中运行得非常好,但如果我运行脚本,它将无法工作 for i in range(n): Popen("python action.py input" +str(i)+ ".txt") 如果我在解释器中复制这段代码,它可以正常工作并生成n个进程,但在pycharm中运行整个脚本时不会执行任何操作 我想您提到的是子流程

我有一个脚本action.py,它将文件名作为命令行参数,并对该文件进行一些处理。 我想使用不同的输入文件多次运行此脚本。我使用了Popen()命令来运行脚本,该脚本在解释器中运行得非常好,但如果我运行脚本,它将无法工作

for i in range(n):
    Popen("python action.py input" +str(i)+ ".txt")
如果我在解释器中复制这段代码,它可以正常工作并生成n个进程,但在pycharm中运行整个脚本时不会执行任何操作

我想您提到的是子流程模块。以下代码可能会起作用:

import subprocess
process = subprocess.Popen(['python','script','argv1','argv2'])
有关更多参考,请阅读文档

希望这有帮助


Python中没有
Popen()
函数,除非您自己编写。请检查您的代码是否有效。作为旁注,为什么不直接从该脚本调用函数呢?您是否使用os import popen的
导入了popen