2013-03-18 17 views
260

Angenommen, meine Zeichenfolge ist 10 Zeichen lang.Entfernen Sie das letzte Zeichen aus der Zeichenfolge (Python)

Wie entferne ich das letzte Zeichen?

Wenn meine Zeichenfolge „abcdefghij“ (Ich will nicht den „j“ Charakter ersetzen. Da meine Zeichenfolge mehrere ‚j‘ Zeichen enthalten) gegangen Ich mag nur das letzte Zeichen. Unabhängig davon, was es ist oder wie oft es auftritt, muss ich das letzte Zeichen aus meiner Zeichenfolge entfernen.

+41

''abcdefghij' '[: - 1]' sollte den Trick machen, aber ich denke, Sie hätten dies leicht in der offiziellen Python-Dokumentation finden können. –

+12

Vielleicht gibt es @ClassStacker, aber immer noch an diesem Tag 186 Leute fanden diese Frage hilfreich und 336 denken das gleiche über die Antwort, also vielleicht (nur vielleicht) Python Docs ist nicht so geradlinig in dieser Angelegenheit für Anfänger ... – Kuba

Antwort

448

Ganz einfach:

st = "abcdefghij" 
st = st[:-1] 

gibt es auch eine andere Möglichkeit, die zeigt, wie es mit den Schritten durchgeführt wird:

list1 = "abcdefghij" 
list2 = list(list1) 
print (list2) 
list3 = list2[:-1] 
print (list3) 

Dies ist auch ein Weg, um mit dem Benutzer ein Wort eingibt:

list1 = input ("Enter :") 
list2 = list(list1) 
print (list2) 
list3 = list2[:-1] 
print (list3) 

Um es das letzte Wort in einer Liste wegnehmen:

list1 = input ("Enter :") 
list2 = list1.split() 
print (list2) 
list3 = list2[:-1] 
print (list3) 
+0

Ja , 'st [-1]' ist nur das letzte Zeichen von 'st' – Cyrille

+1

Eigentlich funktioniert diese Scheibe auch dann noch, wenn' st' leer ist. Nun, es wird immer noch eine leere Zeichenfolge zurückgegeben, aber Sie erhalten keinen Fehler. – kindall

+2

+1 Sie haben Recht. 'st [: - 1]' ist in Ordnung, während 'st [-1]' nicht in Ordnung ist. – Cyrille

Verwandte Themen