List Slicing Teil 2
Teil des Abschnitts Fundamentals der Python-Journey von Coddy — Lektion 65 von 77.
Slicing hat einen weiteren Schrittweite-Parameter (step): lst[start:stop:step]. Betrachten Sie zum Beispiel diese Liste:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]Gibt jedes zweite Element von Index 1 bis 8 aus:
print(numbers[1:8:2])
# Ausgabe: [1, 3, 5, 7]Gibt jedes dritte Element ab Index 2 aus:
print(numbers[2::3])
# Ausgabe: [2, 5, 8]Slicing unterstützt auch negative Indizes.
Vom Ende zählen:
print(numbers[-3:])
# Ausgabe: [7, 8, 9]Hier bedeutet -3 „3 Positionen vor dem Ende beginnen“
Zählen bis zum Ende:
print(numbers[:-2])
# Ausgabe: [0, 1, 2, 3, 4, 5, 6, 7]Hier bedeutet -2 „stoppe 2 Positionen vor dem Ende“ (exklusiv)
Umkehren mit negativem Schritt:
print(numbers[::-1])
# Ausgabe: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]- Leerraum vor dem ersten
:bedeutet „vom Anfang beginnen“ - Leerraum nach dem
:bedeutet „bis zum Ende gehen“ - -1 bedeutet „einen Schritt nach dem anderen rückwärts gehen“
Aufgabe
EinfachErstellen Sie ein Programm, das eine Liste als Eingabe erhält (given) und drei neue Listen basierend auf den folgenden Slicing-Operationen ausgibt:
- Eine Liste, die jedes dritte Element enthält, beginnend bei Index 1 (dem zweiten Element)
- Eine Liste, die alle Elemente vom 6. Element bis zum 1. Element in umgekehrter Reihenfolge enthält
- Eine Liste, die jedes zweite Element enthält, beginnend in der Mitte der Liste bis zum Ende
Spickzettel
Slicing-Syntax: lst[start:stop:step]
Beispiele für Slicing:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# Jedes zweite Element von Index 1 bis 8
print(numbers[1:8:2]) # Ausgabe: [1, 3, 5, 7]
# Jedes dritte Element ab Index 2
print(numbers[2::3]) # Ausgabe: [2, 5, 8]
# Die letzten drei Elemente
print(numbers[-3:]) # Ausgabe: [7, 8, 9]
# Alle Elemente außer den letzten zwei
print(numbers[:-2]) # Ausgabe: [0, 1, 2, 3, 4, 5, 6, 7]
# Die Liste umkehren
print(numbers[::-1]) # Ausgabe: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]Wichtige Punkte:
- Negative Indizes zählen vom Ende der Liste
- Leerraum vor dem ersten
:bedeutet „vom Anfang beginnen“ - Leerraum zwischen den
:bedeutet „bis zum Ende gehen“ - Ein negativer Schritt (step) kehrt die Reihenfolge um
Probier es selbst
lst = input().split(",")
# Schreibe deinen Code untenDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Fundamentals
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 42Variablen
ZahlenStringsBooleanBenennungskonventionenLeere VariablenRückblick - Variablen initialisieren5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachteltes If - Else8Schleifen
For-SchleifeWhile-SchleifeBreakContinueWiederholung - FakultätDie Range-FunktionVerschachtelte SchleifeWiederholung - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenWiederholung – Einfache MathematikVergleichsoperatoren6Grundlagen Ein- und Ausgabe
AusgabeAusgabe mit VariablenEingabeTypumwandlungWiederholung - Bis 120Wiederholung - Wahr oder Falsch9Funktionen
Funktion deklarierenArgumenteRückgabeWiederholung - Sigma-FunktionWiederholung - ValidierungsfunktionStandardwerte12Iterieren über Sequenzen
Iterieren über ElementeDie Enumerate-FunktionIterieren über Strings Teil 1Iterieren über Strings Teil 2