工作時的例子在一本書上的Python並行編程,我遇到了以下代碼錯誤使用了多隊列:builtins.ImportError:不能導入名「空」
File "C:\pyDev\multiproc\queue-test.py", line 4, in <module>
queue = multiprocessing.Queue()
File "C:\Anaconda3\Lib\multiprocessing\context.py", line 100, in Queue
from .queues import Queue
File "C:\Anaconda3\Lib\multiprocessing\queues.py", line 20, in <module>
from queue import Empty, Full
builtins.ImportError: cannot import name 'Empty'
一些試驗後,我確定,生成此錯誤所需的全部內容是以下代碼(這是上述錯誤消息中提到的所有queue-test.py文件)。
import multiprocessing
if __name__ == "__main__":
queue = multiprocessing.Queue()
我一臺機器上運行的Python 3.5.1與4.1.0蟒蛇與Windows 7我已經與蟒蛇2.5移植從書上面的代碼和示例到另一臺機器使用Python 2.7.11 .0,在Windows 10中,它在該機器上工作正常。
考慮到可能在我的Python安裝中存在損壞的文件或其他問題,我嘗試重新安裝Anaconda,但它沒有幫助。我進行了Google搜索,沒有發現這個特定的錯誤。其他的stackoverflow貼子,如在這裏找到的:ImportError: Cannot import name X似乎並不相關,因爲這涉及Python標準庫的一部分,而不是我自己編寫的代碼和類。
我來自Review,只想說_thank you_是我見過的第一個新用戶問題,它的結構良好,經過深入研究,並且具有MCVE([mcve])。 +1 – KernelPanic