Angenommen, meine Zeichenfolge ist 10 Zeichen lang.
Wie entferne ich das letzte Zeichen?
Wenn meine Zeichenfolge lautet "abcdefghij"
(ich möchte das 'j'
Zeichen nicht ersetzen , da meine Zeichenfolge möglicherweise mehrere 'j'
Zeichen enthält), möchte ich nur, dass das letzte Zeichen weg ist. Unabhängig davon, was es ist oder wie oft es auftritt, muss ich das letzte Zeichen aus meiner Zeichenfolge entfernen.
Antworten:
Einfach:
Es gibt auch einen anderen Weg, der zeigt, wie es mit Schritten gemacht wird:
Dies ist auch ein Weg mit Benutzereingaben:
Damit es das letzte Wort in einer Liste wegnimmt:
quelle
st[-1]
ist nur das letzte Zeichen vonst
st
es leer ist. Nun, es wird immer noch eine leere Zeichenfolge zurückgegeben, aber Sie erhalten keine Fehlermeldung.[i[:-1] for i in ['blue','red','green']]
list.pop()
Methode beim Umgang mit Listen der richtige Weg ist, da das letzte Element entfernt wirdO(1)
, während beim[:-1]
Schneiden eine Kopie einer Liste ohne das letzte Element in derO(n-1)
Zeit erstellt wird plusO(n-1)
Platz. Saiten sind unveränderlich - also nichts hinzuzufügen.Was Sie versuchen, ist eine Erweiterung des String-Slicing in Python:
Angenommen, alle Zeichenfolgen haben die Länge 10, das letzte zu entfernende Zeichen:
So entfernen Sie die letzten
N
Zeichen:quelle