Überprüfen Sie die Länge der Liste in Python in 3 einfachen Schritten

In diesem Artikel sehen wir, wie Sie die Länge einer Liste in einigen der einfachen Schritte überprüfen und analysieren, welche besser ist.

Was ist Python-Liste?

Die Liste ist eine Array-Sammlung in Python, die mehrere Datentypen darin speichern kann. Es kann eine Ganzzahl, Float, String, Boolean oder sogar eine Liste innerhalb einer Liste speichern.

int_list = [1, 2, 3, 4, 5]

print(int_list) # output -> [1, 2, 3, 4, 5]

float_list = [1.1, 2.2, 3.3, 4.4, 5.5]

print(float_list) # output -> [1.1, 2.2, 3.3, 4.4, 5.5]

string_list = ['Geekflare', 'Cloudflare', 'Amazon']

print(string_list) # output -> ['Geekflare', 'Cloudflare', 'Amazon']

boolean_list = [True, False]

print(boolean_list) # output -> [True, False]

nested_list = [[1, 2], [1.1, 2.2], ['Geekflare', 'Cloudflare'], [True, False]]

print(nested_list) # [[1, 2], [1.1, 2.2], ['Geekflare', 'Cloudflare'], [True, False]]

different_datatype_list = [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

print(different_datatype_list) # output -> [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

Python-Listen können mit einer eckigen Klammer oder einer Listenkonstruktorfunktion erstellt werden.

square_bracket_list = [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

print(square_bracket_list) # output -> [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

constructor_list = list((1, 1.1, 'wdzwdz', True, [1, 1.1, 'Geekflare', True]))

print(constructor_list) # output -> [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

Die obige square_bracket_list ist eine Liste, die mit eckigen Klammern ([]), ist constructor_list eine Liste, die mit dem Listenkonstruktor erstellt wurde. Beide erzeugen nur die gleiche Listenausgabe.

  12 Cloud-Computing-Online-Kurse, um Ihre Karriere voranzutreiben

Die Liste kann veränderbar sein, Duplikate zulassen und über einen Index zugänglich sein.

Methoden zum Ermitteln der Listenlänge

  • len() eingebaute Funktion
  • length_hint-Methode vom Operator
  • benutzerdefinierte Funktion & Zähler

Methode 1: len() eingebaute Funktion

len() ist eine in Python eingebaute Funktion, die verwendet wird, um die Länge der Liste und auch für andere Iterables wie Set, Tuples, Dictionary zu ermitteln.

Beispielausschnitt

languages = ['Python', 'Java', 'C++', 'PHP', 'nodeJS']

languages_length = len(languages)

print('Length of the Language List is: ',languages_length)

Ausgabe

Length of the Language List is:  5

Ich hoffe, Sie haben Python installiert, wenn nicht, können Sie einen Online-Python-Compiler verwenden, um den Code zu üben.

Methode 2: length_hint-Methode vom Operator

length_hint wird verwendet, um eine Länge eines iterierbaren Objekts (wie List, Set, Tuples, Dictionary) zurückzugeben. Es ist im Python-Operatormodul verfügbar. Nicht verfügbar wie andere eingebaute Operatoren.

Beispielausschnitt

import operator

languages = ['Python', 'Java', 'C++', 'PHP', 'nodeJS']

languages_length = operator.length_hint(languages)

print('Length of the Language List using Operator is: ',languages_length)

Ausgabe

Length of the Language List using Operator is:  5

Methode 3: Benutzerdefinierte Funktion und Zähler

Bei dieser Methode zum Ermitteln der Länge der Liste verwenden wir die traditionelle Methode, indem wir for-Schleife und Zähler verwenden.

  So verbergen oder entfernen Sie Kommentare in Google Docs

Dafür schreiben wir eine Funktion in Python. die eine Liste oder eine andere Iterable als Argument nimmt und die Länge einer Iterable zurückgibt.

Benutzerdefiniertes Funktions-Snippet

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

Beispielausschnitt

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

languages = ['Python', 'Java', 'C++', 'PHP', 'nodeJS']

languages_length = iterable_count(languages)

print('Length of the Language List using Custom function is: ',languages_length)

Ausgabe

Length of the Language List using Custom function is:  5

Analyse dieser 3 Methoden

Leistungsanalyse für eine große Liste

import timeit # for benchmarking & profiling
import operator

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

integer_list = list(range(1, 9999999))

#length check using len()
start_time = timeit.default_timer()
len_length = len(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using len() is: ',len_length)

#length check using operator.length_hint
start_time = timeit.default_timer()
len_length = operator.length_hint(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using length_hint is: ',len_length)

start_time = timeit.default_timer()
iterable_count_length = iterable_count(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using Custom function is: ',iterable_count_length)

Ausgabe

3.957189619541168e-06 Length of the Integer List using len() is:  9999998
3.0621886253356934e-06 Length of the Integer List using length_hint is:  9999998
0.4059128537774086 Length of the Integer List using Custom function is:  9999998

Wie wir sehen können, ist length_hint schneller (3.0621886253356934e-06), wenn Daten in Millionenhöhe vorliegen. Dies liegt daran, dass Längenhinweise von der CPython-Laufzeit verwendet werden. Wo es als Python-Wrapper bezeichnet wird.

  So heften Sie ein Bild an den oberen Rand Ihres Desktops

Leistungsanalyse für eine kleine Liste

import timeit # for benchmarking & profiling
import operator

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

integer_list = list(range(1, 100))

#length check using len()
start_time = timeit.default_timer()
len_length = len(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using len() is: ',len_length)

#length check using operator.length_hint
start_time = timeit.default_timer()
len_length = operator.length_hint(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using length_hint is: ',len_length)

start_time = timeit.default_timer()
iterable_count_length = iterable_count(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using Custom function is: ',iterable_count_length)

Ausgabe

7.813796401023865e-07 Length of the Integer List using len() is:  99
1.1278316378593445e-06 Length of the Integer List using length_hint is:  99
3.462657332420349e-06 Length of the Integer List using Custom function is:  99

Wie wir sehen können, ist len() schneller (7.813796401023865e-07), wenn die Daten in Tausend oder weniger liegen.

In beiden Fällen benötigt unsere benutzerdefinierte Funktion mit Zähler mehr Zeit als beide Methoden.

Fazit

In diesem Artikel verstehen wir verschiedene Möglichkeiten, die Länge der Liste zu überprüfen und wie sie die Länge der Liste schnell überprüfen.