Ich musste von Python 2.7 auf 2.6 ändern.
Ich habe eine Deque mit der Maxlen-Eigenschaft verwendet und habe überprüft, was die Maxlen ist. Anscheinend können Sie Maxlen in Python 2.6 verwenden, aber in 2.6 haben Deques kein Maxlen-Attribut.
Was ist der sauberste Weg zu überprüfen, was der Maxlen einer Deque in Python 2.6 ist?Maxlen von Deque in Python überprüfen 2.6
In 2.7:
from collections import deque
d = deque(maxlen = 10)
print d.maxlen
In 2.6 kann die deque verwendet werden und die maxlen funktioniert, aber maxlen ist kein Attribut, auf die verwiesen werden kann.
Prost
Eine Sache - iterable und maxlen sind beide optionale Argumente, so dass iterable einen Standardwert benötigt. Du kannst iterable = None jedoch nicht an die collections.deque übergeben __init__ also denke ich, dass es eine if-Anweisung braucht? Gibt es einen besseren Weg, das herauszufinden? – simonb
Eigentlich ist es einfacher als das. Der Standardwert für iterable ist das leere Tupel '()'. Ich werde den Code bearbeiten, um das in einem Moment zu reflektieren. –
Fertig. Mit einem Anwendungsbeispiel. –