2016-11-13 4 views
2

Lassen Sie uns sagen, dass ich in einer Variablen gespeichert einen String haben:Wende Teil einer Zeichenfolge in Python

a = 'Python' 

Nun a[2:4] kehrt th. Wie kann ich diesen Teil der Zeichenfolge umkehren, so dass ich stattdessen ht zurückgegeben bekomme?

Dies ist, was ich versucht:

print a[2:4:-1] 

Aber dieses eine leere Zeichenfolge zurückgegeben. Jetzt weiß ich, dass ich einfach das Ergebnis von a[2:4] in einer neuen Variablen speichern und diese neue Variable umkehren kann. Aber gibt es eine Möglichkeit, einen Teil einer Zeichenfolge umzukehren, ohne eine neue Variable zu erstellen?

Antwort

3
>>> a = 'Python' 
>>> a[2:4] 
'th' 

die Teilrück [::-1]

>>> a[2:4][::-1] 
'ht' 

oder anpassen Indizes mit:

>>> a[3:1:-1] 
'ht' 
+0

Einstellen Indizes scheint der Nebel effizient zu sein, da es eine andere temporäre Liste erstellen tut. –

2

Sie müssen die Start- und Endoffsets vertauschen. Hast du versucht a[3:1:-1]? Natürlich müssen Sie wie gewohnt vorgehen: Der Anfangsversatz wird genommen, der Endversatz nicht (deshalb habe ich 4 zu 3 und 2 zu 1 geändert).