Python enumerate(): Objekte nummerieren und ausgeben

Python enumerate() wird verwendet, um eine Eingabe als Aufzählungsobjekt auszugeben. Mit der integrierten Funktion können Sie unter anderem Strings und Auflistungen durchnummerieren.

Was ist Python enumerate()?

Die Python-Funktion enumerate() wird verwendet, um aus einer Eingabe eine Aufzählung zu machen. Die Objekte, bei denen es sich zum Beispiel auch um Strings oder Python-Tuples handeln kann, werden dabei jeweils mit einem Zähler bestückt. Die Aufzählung erfolgt fortlaufend und beginnt standardmäßig bei „0“. Die Funktion ist standardmäßig in der Programmiersprache enthalten.

Managed Nextcloud von IONOS

Für DSGVO-konforme Teamarbeit ganz ohne Administrationsaufwand.

Daten speichern, verwalten und gemeinsam bearbeiten - flexibel um Apps und Online Office erweiterbar. Ideal für KMUs, Agenturen und Selbständige.

DSGVO-konform
SSL-Zertifikat
DE-Rechenzentren

Syntax und Parameter von Python enumerate()

Die Syntax von Python enumerate() sieht so aus:

enumerate(iterable, start)
python

Sie hat zwei Parameter:

  • „iterable“: „iterable“ ist ein Objekt oder eine Sequenz, das oder die in einer Schleife ausgeführt werden kann. Diesem Parameter wird später die Aufzählung vorangestellt. Er ist obligatorisch.
  • „start“: Hierbei handelt es sich um einen optionalen Parameter. Sie können mit ihm bestimmen, ab welchem Zahlenwert die Nummerierung begonnen werden soll. Sein Standardwert ist „0“.

Beispiel für eine Aufzählung mit enumerate()

Um die Funktionsweise zu veranschaulichen, wählen wir ein einfaches Beispiel mit vier verschiedenen Farben. Diese nummerieren wir mithilfe von Python enumerate(). Der passende Code sieht aus wie folgt:

farben = ['Blau', 'Rot', 'Gelb', 'Orange']
abfolge = enumerate(farben)
print(list(abfolge))
python

Dadurch erhalten wir diese Ausgabe:

[(0, 'Blau'), (1, 'Rot'), (2, 'Gelb'), (3, 'Orange')]
python

Python enumerate() mit einem Startindex

Da wir keinen Startindex angegeben haben, beginnt die Aufzählung bei „0“. Um dies zu ändern, fügen wir zu Python enumerate() den Parameter „start“ mit dem Wert „1“ hinzu. Hierfür ändern wir den Code von oben nur geringfügig ab:

farben = ['Blau', 'Rot', 'Gelb', 'Orange']
abfolge = enumerate(farben, 1)
print(list(abfolge))
python

So sieht unsere Ausgabe direkt ein wenig schöner aus:

[(1, 'Blau'), (2, 'Rot'), (3, 'Gelb'), (4, 'Orange')]
python

Den Startindex können Sie allerdings nach Belieben anpassen, sodass die Aufzählung auch bei jedem anderen Wert beginnen kann.

Die enumerate()-Funktion mit einer for-Schleife

In Kombination mit einer for-Schleife können wir die Nutzung von Python enumerate() mit und ohne Startindex kombinieren. Für die erste Schleife verzichten wir dabei auf den Parameter „start“. Die Zählung beginnt daher bei „0“. Für die zweite Schleife bauen wir den Parameter mit dem Startpunkt „5“ ein. Daher beginnt diese Zählung an dieser Stelle. Mit der Kennzeichnung "\n" weisen wir das System an, jeweils eine neue Zeile zu erstellen, damit es etwas übersichtlicher wird. Das ist der Code für diese Kombination:

farben = ['Blau', 'Rot', 'Gelb', 'Orange']
for abfolge in enumerate(farben):
    print(abfolge)
    print("\n")
print("Es geht weiter ab 5")        
for abfolge in enumerate(farben, 5):
    print(abfolge)
    print("\n")
python

Unsere Ausgabe sieht nun so aus:

(0, 'Blau')
(1, 'Rot')
(2, 'Gelb')
(3, 'Orange')
Es geht weiter ab 5
(5, 'Blau')
(6, 'Rot')
(7, 'Gelb')
(8, 'Orange')
python

String aufzählen mit Python enumerate()

Wenn Sie einen String aufzählen möchten, ist ebenfalls Python enumerate() die passende Wahl. Dabei wird der String in seine Einzelteile zerlegt und durchnummeriert. So sieht der passende Code aus:

string = "beispiel"
for x in enumerate(string, 1):
    print(x)
python

Dies ist die passende Ausgabe:

(1, 'b')
(2, 'e')
(3, 'i')
(4, 's')
(5, 'p')
(6, 'i')
(7, 'e')
(8, 'l')
python
Tipp

Die beste Lösung für Websites und Apps: Mit Deploy Now von IONOS deployen Sie Ihre Webprojekte direkt via GitHub. Dabei profitieren Sie nicht nur von einer fairen Preisgestaltung, sondern können auch das Setup perfekt auf Ihre Bedürfnisse zuschneiden. Lassen Sie sich von unseren Expertinnen und Experten beraten!