2012-09-22 10 views
18

Come controllare la lunghezza della coda in python?Come controllare la lunghezza della coda in Python

io non vedo che forniscono Queue.lenght in pitone ....

http://docs.python.org/tutorial/datastructures.html

from collections import deque 
queue = deque(["Eric", "John", "Michael"]) 

come controllare la lunghezza di questa coda?

e possiamo inizializzare come

queue= deque([]) #is this length 0 queue? 
+3

Hai provato 'len (coda)'? Di solito è come Python gestisce i conteggi degli elementi. – mjgpy3

risposta

26

len(queue) dovrebbe darvi il risultato, 3 in questo caso.

In particolare, la funzione len(object) chiamerà il metodo object.__len__ [reference link]. E l'oggetto in questo caso è deque, che implementa il metodo __len__ (lo puoi vedere per dir(deque)).


queue= deque([]) #is this length 0 queue? 

Sì, sarà 0 per vuoto deque.

+2

AttributeError: l'istanza della coda non ha attributo '__len__' Ho usato qsize() invece https://docs.python.org/2.7/library/queue.html – memo

+0

@memo: leggi il corpo della domanda. 'collections.deque' è diverso da' queue.Queue'. Si prevede che quest'ultimo sia utilizzato in un caso multithreading in cui la dimensione può essere modificata in un altro thread. – jfs

-3

Usa queue.rear+1 per ottenere la lunghezza della coda

9

è semplice basta usare .qsize() esempio:

a=Queue() 
a.put("abcdef") 
print a.qsize() #prints 1 which is the size of queue 
Problemi correlati