English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Grundlegende Anleitung zu Python

Flusssteuerung in Python

Python-Funktion

Python-Datentypen

Dateioperationen in Python

Python Objekte und Klassen

Python Datum und Zeit

Hochwertiges Wissen über Python

Python Referenzhandbuch

Python-for-Schleife

Der for-Schleife in Python kann alle Elemente einer Sequenz durchlaufen, wie eine Liste oder einen String.

Was ist der for-Schleife in Python?

Der for-Schleife in Python wird verwendet, um Sequenzen (list,tuple,string) oder anderen iterablen Objekten. Das Iterieren über eine Sequenz wird als Durchsuchen bezeichnet.

Syntax des for-Schleifen

for val in sequence:
	Körper des for

Hier ist val die Variable, die den Wert des Elements in jeder Iteration enthält.

Die Schleife wird fortgesetzt, bis wir das letzte Element der Sequenz erreichen. Verwenden Sie Einrückung, um den Körper der for-Schleife vom Rest des Codes zu trennen.

Flussdiagramm des for-Schleifen

Flussdiagramm des Python for-Schleifen

Beispiel: Python for-Schleife

# Das Programm sucht nach der Summe aller in der Liste gespeicherten Zahlen
# Zahlenliste
numbers = [6, 5, 3, 8, 4, 2, 5, 4, 11]
# Variable zum Speichern des Gesamtwerts
sum = 0
# Liste durchlaufen
for val in numbers:
    sum = sum+val
print("Die Summe beträgt", sum)

Wenn Sie das Programm ausführen, wird die Ausgabe sein:

Die Summe beträgt 48

Funktion range()

Wir können die Nummerierungsfolge mit der Funktion range() generieren. range(10) erzeugt 0 bis9Zahlen zwischen10Zahlen).

Wir können auch den Start, das Ende und den Schritt als range(start, stop, step_size) definieren. Wenn nicht angegeben, ist der Standardwert für step_size1.

Der range-Objekt ist in gewisser Weise 'faul', da er nicht alle Zahlen, die er 'enthält', erstellt, wenn wir ihn erstellen. Aber es ist kein Iterator; es unterstützt in, len und getitem-Operationen.

Diese Funktion speichert nicht alle Werte im Speicher; das wäre ineffizient. Daher merkt sie sich den Start, das Ende und den Schritt und generiert die nächste Zahl im Lauf.

Um zu erzwingen, dass diese Funktion alle Elemente ausgibt, kann die Funktion list() verwendet werden.

Dieses Beispiel zeigt dies.

print(range(10))
print(list(range(10))
print(list(range(2, 8))
print(list(range(2, 20, 3))

Ausgaberesultat

range(0, 10)}}
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[2, 3, 4, 5, 6, 7]
[2, 5, 8, 11, 14, 17]

Wir können die range() -Funktion im for-Loop verwenden, um die numerische Sequenz zu iterieren. Sie kann mit der len() -Funktion kombiniert werden, um die Indizes der Sequenz zu durchsuchen. Dies ist ein Beispiel.

# Programm zum Durchsuchen der Liste mit Indizes
genre = ['pop', 'rock', 'jazz']
# Durchsuchen der Liste mit Indizes
for i in range(len(genre)):
    print('Ich mag', genre[i])

Wenn das Programm ausgeführt wird, ist die Ausgabe:

Ich mag Pop
Ich mag Rock
Ich mag Jazz

with else-loop

for-Loop kann auch einen optionalen else-Block haben.

Wenn die Elemente der Sequenz, die im for-Loop verwendet wird, verbraucht sind, wird der else-Teil ausgeführt.

Das break-Schlüsselwort kann verwendet werden, um den for-Loop zu stoppen. In diesem Fall wird der else-Teil ignoriert.

Daher wird der else-Teil des for-Loops ausgeführt, wenn keine Unterbrechung aufgetreten ist.

Dies ist ein Beispiel, um dies zu veranschaulichen.

digits = [0, 1, 5]
for i in digits:
    print(i)
else:
    print('Es gibt keine verbleibenden Projekte.')

Wenn das Programm ausgeführt wird, ist die Ausgabe:

0
1
5
Es gibt keine verbleibenden Projekte.

Hier wird der for-Loop die Elemente der Liste drucken, bis der Loop ausgeht. Wenn der for-Loop ausgeht, führt er den else-Codeblock aus und gibt "Es gibt keine verbleibenden Projekte".

for...else-Anweisungen können zusammen mit dem break-Schlüsselwort verwendet werden, um sicherzustellen, dass der else-Block nur ausgeführt wird, wenn das break-Schlüsselwort nicht ausgeführt wird. Lassen Sie uns ein Beispiel nennen:

# Programm zum Anzeigen der Noten der Schüler
student_name = 'Soyuj'
marks = {'James': 90, 'Jules': 55, 'Arthur': 77}
for student in marks:
    if student == student_name:
        print(marks[student])
        break
else:
    print('Es wurde kein Eintrag mit diesem Namen gefunden.')

Ausgaberesultat

Es wurde kein Eintrag mit diesem Namen gefunden.