没有名为“队列”的模块


问题内容

我导入的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'

接下来我应该尝试什么?


问题答案:

在Python 2上,模块被命名Queue,在Python
3上,模块被重命名以遵循PEP8准则(模块名称全部小写),使其成为queue。该 遗体Queue上的所有版本(以下PEP8)。

通常,编写版本可移植导入的方式是:

try:
    import queue
except ImportError:
    import Queue as queue