在窗口 3 上使用 python 部署的多处理'Pool'选项10 不起作用,导致错误



我正在尝试使用Python 3的多处理库。模块已正确导入并且未显示任何错误,但是在使用它时,我收到错误。

这是我的代码:

from multiprocessing import Pool
import time
start_time = time.process_time()
p = Pool(10)
def print_range():
    for i in range(10000):
        print('Something')
end_time = time.process_time()
print(end_time-start_time)
p.map(print_range())

但是我收到此错误:

导入错误: 无法从"多处理"导入名称"池"(C: ...路径文件(

没有人遇到过此错误,并有解决方案?谢谢

可能与安全导入main有关。请参阅文档中的此部分。具体来说,您需要像这样更改代码:

from multiprocessing import Pool
import time

def print_range():
    for i in range(10000):
        print('Something')
if __name__ == '__main__':
    start_time = time.process_time()
    p = Pool(10)
    end_time = time.process_time()
    print(end_time-start_time)
    p.map(print_range()) # incorrect usage

此外,您对map()的用法不正确。有关示例,请参阅文档,或改用p.apply(print_range)

相关内容

  • 没有找到相关文章

最新更新