[英]Install Multiprocessing python3
对 Python 来说很新。 我想安装python的多处理模块。 我正在使用 python 3.6 和 pip 9.1 版。
我收到一个错误,这让我相信,由于没有与 python 3 兼容的多处理模块,可能会发生以下错误。
$ pip3 install multiprocessing
Collecting multiprocessing
Using cached multiprocessing-2.6.2.1.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/8m/2fkldrg12lg0qzlhpm8yvyq00000gn/T/pip-build-dqdczlx9/multiprocessing/setup.py", line 94
所以,我使用安装了模块的 pip install multiprocessing 安装了模块。 我在 python 3 中编写了很多代码,所以我想使用它,我正在使用 pycharm 编辑器,我已将其配置为使用 python3。 现在,如果我在编辑器中执行代码,它会抛出类似的错误
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 /Users/kkk/Desktop/testing/multiprocessing.py
Traceback (most recent call last):
File "/Users/testing/multiprocessing.py", line 11, in <module>
p = multiprocessing.Process(target=worker)
AttributeError: module 'multiprocessing' has no attribute 'Process'
Process finished with exit code 1
对于代码
import multiprocessing
def worker():
"""worker function"""
print ('Worker')
return
if __name__ == '__main__':
jobs = []
for i in range(5):
p = multiprocessing.Process(target=worker)
jobs.append(p)
p.start()
我能做些什么来解决这个问题?
谢谢
从 Python 2.6 开始, multiprocessing
是一个内置模块。
它与 Python 一起提供,不需要特定的安装步骤。
问题不在于multiprocessing
模块,而在于您命名脚本的方式,您实际上是在其中尝试导入multiprocessing
模块。 您将其命名为与模块相同的名称,即multiprocessing.py
,因此import multiprocessing
实际上导入脚本本身而不是标准库的模块。
- 包含输入脚本的目录(或未指定文件时的当前目录)。
- PYTHONPATH (目录名称列表,与 shell 变量 PATH 具有相同的语法)。
- 依赖于安装的默认值。
如您所见,Python 查找要导入的模块的第一个位置是包含输入脚本的目录。 这就是它在您的情况下导入脚本本身的原因。 并且您的脚本不包含您尝试使用的Process
类,这就是您收到错误AttributeError: module 'multiprocessing' has no attribute 'Process'
。
这个问题不是multiprocessing
模块特有的,任何模块都会发生。 因此,最好不要将您的脚本命名为您将要使用的现有模块 (import) 。
将您的文件名更改为除 multiprocessing.py 之外的任何名称...您的代码将尝试导入自身。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.