我导入的Python模块
import Queue
from threading import Thread
import time
但是当我运行代码时
File "b1.py", line 3, in <module>
import Queue
ModuleNotFoundError: No module named 'Queue'
我在SO上看过类似的帖子,但是没有用到我身上
/usr/bin/python3 --version
Python 3.5.2
milenko@milenko-System-Product-Name:~$ python --version
Python 3.6.0 :: Anaconda custom (64-bit)
如果我改为
from multiprocessing import Queue
没有导入问题。但是我没有这个
AttributeError: 'Queue' object has no attribute 'join'
我接下来应该尝试什么?
答案 0 :(得分:11)
在Python 2上,模块名为Queue
,在Python 3上,was renamed跟随PEP8 guidelines(模块名称全部为小写),使其成为queue
。 类在所有版本上都是Queue
(在PEP8之后)。
通常,您编写便携式导入版本的方式是:
try:
import queue
except ImportError:
import Queue as queue
答案 1 :(得分:0)
就我而言,我有以下 Python 2.7
from Queue import Queue, Empty
我只将模块名称更改为小写,它在 Python 3 中运行良好
from queue import Queue, Empty