multiprocessing.Pool.map() 是 Python 多进程模块中的一个函数,可以将一个可迭代对象分成多个可处理的块,并使用多个进程同时处理这些块。

其语法如下:

map(func, iterable[, chunksize=None])

参数说明:

  • func: 要并行执行的函数。
  • iterable: 可迭代对象,表示要处理的数据。
  • chunksize: 每个进程一次性处理的数据块大小。

返回值:

一个由多个子进程的处理结果组成的列表。

示例:

import multiprocessing

def square(x):
    return x * x

if __name__ == '__main__':
    with multiprocessing.Pool(processes=4) as pool:
        result = pool.map(square, [1, 2, 3, 4, 5])
        print(result)

输出结果:

[1, 4, 9, 16, 25]

在这个例子中,我们定义了一个函数 square(),用于计算其参数的平方。然后,我们使用 map() 函数,将这个函数应用到一个列表 [1, 2, 3, 4, 5] 中的每个元素上。

由于我们指定了进程数为 4,所以这个列表被分成 4 个块,并使用 4 个进程同时处理这些块。最后,map() 函数返回一个包含每个元素平方的新的列表。

Python multiprocessing.Pool.map() 函数用法详解

原文地址: https://www.cveoy.top/t/topic/nv1X 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录