python - 并行 Python for 循环

标签 python python-2.7 gis

我主要使用 arcgis 和 pci 风格的 python 2.7。我创建了许多在这些程序之外运行但使用这些库的进程。它们通过 cmd 通过 .bat 文件运行。

目前,他们在一系列 for 循环中运行进程。每个 for 循环都按顺序处理。我想知道是否有一种方法可以在 for 循环中同时对列表中的每个对象运行处理。那是并行的。我能想到的唯一方法是为列表中的每个对象打开一个cmd,并单独运行处理。

我问的问题可能吗?我应该在哪里寻找解决方案?

最佳答案

查看Subprocess因此,您希望在后台创建一个新的命令行窗口,其中 test.bat 并行运行..并且在您的情况下,您不想等待命令完成后再继续程序,因此请使用 subprocess.Popen 代替(可以是值得研究的东西 好吧)

subprocess.call 

Run the command described by args. Wait for command to complete, then return the returncode attribute.

如果您想从 python 脚本启动外部程序,请将程序的文件名传递给 Ubuntu Linux 上的 subprocess.Popen(),您将输入类似

>>>import subprocess 
>>>subprocess.Popen('/usr/bin/gnome-...')
<subprocess.Popen Object at 0x7f2bcf93b20

返回值是一个 Popen 对象,它有两个有用的方法: poll() 和 wait()

poll() 就像询问你的 friend 是否已经运行完你给他的代码。 wait() 就像等待你的 friend 完成他的代码,然后你再继续处理你的代码。(你可能想研究一下)

关于python - 并行 Python for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47723305/

相关文章:

python - 新建一个数组

javascript - 获取 OpenLayers GET 请求的 responseText JSON 元素

python - 将圆柱体拟合到分散的 3D XYZ 点数据

python - 有没有办法将时间序列数据重新采样为 x 小时并以 One-Hot 编码格式获得输出?

在 shell 中工作的 Python 段错误 - Mavericks readline.so 错误

python - Ubuntu服务器上的scrapy

pandas - 在 Geopandas 数据框中按经度对几何列进行排序/排序

algorithm - 如何将必应 map 四键转换为墨卡托坐标

python - 如何spark-submit存储在GCP存储桶中的.py文件?

python - 如何使用 "xlsxwriter"而不是 "openpyxl"写入具有多个工作表的 Excel?