2017-01-13 7 views
0

я стараюсь использовать программу на окнах:не модуль с именем «Queue» на окнах

import random, time, Queue 
from multiprocessing.managers import BaseManager 

task_queue = Queue.Queue() 
result_queue = Queue.Queue() 

class QueueManager(BaseManager): 
    pass 

QueueManager.register('get_task_queue', callable=lambda: task_queue) 
QueueManager.register('get_result_queue', callable=lambda: result_queue) 

manager = QueueManager(address=('', 5000), authkey='abc') 
manager.start() 
task = manager.get_task_queue() 
result = manager.get_result_queue() 

for i in range(10): 
    n = random.randint(0, 10000) 
    print('Put task %d...' % n) 
    task.put(n) 
print('Try get results...') 

for i in range(10): 
    r = result.get(timeout=10) 
    print('Result: %s' %r) 
manager.shutdown() 

Я получаю сообщение об ошибке:

ImportError: No module named 'Queue' 

Но я запустить его в Ubuntu, это работает. Я ищу Queue в stackoverflow, pypi.python.org для Windows и попробуйте установить Queue Queue. Наконец, это не удалось. Так как я использую модуль очереди в окнах?

+4

В Python3 модуль называется 'queue' (нижний). – unutbu

+1

Duplicate: http://stackoverflow.com/questions/33432426/importerror-no-module-named-queue –

ответ

2

Я думаю, что вы хотите использовать Queue из многопроцессорных модуля, а затем импортировать этот путь -

from multiprocessing import Queue 

Если вы хотите использовать структуру данных очереди, то вы используете строчными queue.

import queue 
+1

вот-вот должен был написать это, избить меня до него – WhatsThePoint