Bash 单行打开多个进程并在每个进程中执行一个 Python 函数 - 穷人的并行处理

Bash 单行打开多个进程并在每个进程中执行一个 Python 函数 - 穷人的并行处理

我有一个类似 my_functions.py 的 python 文件,该文件中有一个函数

def func(a,b):
      result = does_some_stuff(a,b)
      return result

是否有一个 bash 单行程序可以打开 N 个 python 会话并使用指定的参数 a 和 b 运行此函数?我正在考虑将其用于一些穷人的并行处理,因为 func 中存在一些随机性,即使使用相同的参数 a 和 b,所有调用也不会做同样的事情。

答案1

首先,如果 bash 必须运行带有参数的 python 脚本并执行函数 func,则需要__main__在 .py 文件末尾添加一个部分,例如:

如果 __name__ == "__main__":
    导入系统
    函数(sys.argv[1], sys.argv[2])

您可能希望将 func 的结果打印到 stdout,将其用作脚本退出代码,...

然后 bash 脚本只需执行“python myfunc.py 12 42 &”即可运行该函数。“&”表示程序在后台运行。

相关内容