Wie man Python-Liste der Zählung Länge
Möchte ich wissen, wie len() funktioniert.
Gilt es zu zählen, der von Anfang bis Ende eine Liste jedes mal, wenn ich rufe len(), oder, da die Liste ist auch Klasse, macht len() nur wieder eine variable in der Liste Objekt-Datensatz der Liste die Länge?
Auch, ich hoffe jemand kann mir sagen, wo finde ich den source-code von diesen integrierten Funktionen wie der 'len()', 'anzeigen()', etc.
- Es ruft die
__len__
- Methode des list-Objekts. Sie können die Quelle hier: svn.python.org/view/python/tags/r27/Objects/... - es verfolgt seine Länge, so dass es nicht erzählen, jedes mal ...
- Und hier ist die Quelle für die gelieferten: hg.python.org/releasing/2.7.4/file/9290822f2280/Python/...
- aus welchem Grund würde man erwarten, dass eine Liste nicht um zu wissen, die Länge, zu allen Zeiten?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Download Python 2.7-source-code hier: http://www.python.org/getit/releases/2.7.4/
list
umgesetzt wird./Include/listobject.h
und./Objects/listobject.c
.list.__len__()
nur berätob_size
, die Teil derPyObject_VAR_HEAD
. Dies machtlen()
eine Konstante operation, die für Listen.Gut, Sie können finden Sie in der Dokumentation des integrierten Funktionen hier.
Den
list
Daten-Typ verfolgt die Anzahl von Elementen, die es in der Hand hält,len(list)
ist eine O(1) - operation.Für den source-code, können Sie den Quell-code von Python die download-Seite.