759 Stimmen

Ist arr.__len__() der bevorzugte Weg, um die Länge eines Arrays in Python zu erhalten?

Unter Python Ist die folgende Methode die einzige Möglichkeit, die Anzahl der Elemente zu ermitteln?

arr.__len__()

Wenn ja, warum dann die seltsame Syntax?

0 Stimmen

8voto

Ahmed Abobakr Punkte 1458

Können Sie len(arr) wie in früheren Antworten vorgeschlagen, um die Länge des Arrays zu ermitteln. Falls Sie die Abmessungen eines 2D-Arrays benötigen, können Sie Folgendes verwenden arr.shape gibt Höhe und Breite zurück

7voto

Harun ERGUL Punkte 5306

len(list_name) Funktion nimmt list als Parameter und ruft list's __len__() Funktion.

3voto

JOHNKYON Punkte 83

Python schlägt vor, dass die Benutzer len() anstelle von __len__() für Konsistenz, wie andere schon sagten. Es gibt aber noch einige andere Vorteile:

Für einige eingebaute Typen wie list , str , bytearray und so weiter, die Cython-Implementierung von len() nimmt eine Abkürzung. Sie gibt direkt die ob_size in einer C-Struktur, was schneller ist als der Aufruf von __len__() .

Wenn Sie an solchen Details interessiert sind, können Sie das Buch "Fluent Python" von Luciano Ramalho lesen. Es enthält viele interessante Details und kann Ihnen helfen, Python besser zu verstehen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X