Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich eine Liste in Python umkehren, ohne die ursprüngliche Liste zu ändern?

Wie kann ich eine Liste in Python umkehren, ohne die ursprüngliche Liste zu ändern?

Linda Hamilton
Linda HamiltonOriginal
2024-11-13 13:24:02790Durchsuche

How to Reverse a List in Python Without Modifying the Original List?

Methodenverkettung zur Listenumkehr

Beim Arbeiten mit Listen ist es oft wünschenswert, eine umgekehrte Kopie zu erstellen, ohne explizit eine separate Anweisung zu verwenden. Die integrierte list.reverse()-Methode gibt jedoch None zurück und ändert die Liste direkt.

Das Problem

Beachten Sie den folgenden Code:

k = ['F', ' ', 'B', 'F']

def solution(formation):
    return (formation.index(bCamel) > (len(formation) - 1 - (formation.reverse()).index(fCamel)))

solution(k)

Dieser Code versucht, die Indizes zweier Zeichen (bCamel und fCamel) in einer umgekehrten Liste zu vergleichen. Es wird jedoch ein AttributeError ausgelöst, da list.reverse() None zurückgibt und (formation.reverse()) als None zurückbleibt.

Lösung: Verwenden von Slicing

Anstelle von Wenn Sie sich auf list.reverse() verlassen, können Sie Slicing verwenden, um eine umgekehrte Liste zu erhalten:

reversed_formation = formation[::-1]

Die Syntax [::-1] kehrt die Liste um, ohne sie direkt zu ändern. Sie können dann nach Bedarf reversed_formation verwenden:

def solution(formation):
    reversed_formation = formation[::-1]
    return (formation.index(bCamel) > (len(formation) - 1 - reversed_formation.index(fCamel)))

Das obige ist der detaillierte Inhalt vonWie kann ich eine Liste in Python umkehren, ohne die ursprüngliche Liste zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn