Ich habe gesucht, wie dies in Python zu tun, und ich kann keine Antwort finden. Wenn Sie eine Zeichenfolge haben:Python - Zeichen in einer Zeichenfolge um 1 erhöhen
>>> value = 'abc'
Wie würden Sie alle Zeichen in einer Zeichenfolge um 1 erhöhen? So ist die Eingabe, die ich suche ist:
>>> value = 'bcd'
Ich weiß, dass ich es mit einem Charakter tun ord und chr mit:
>>> value = 'a'
>>> print (chr(ord(value)+1))
>>> b
Aber ord()
und chr()
nur ein Zeichen nehmen. Wenn ich dieselbe Anweisung oben mit einer Zeichenfolge aus mehr als einem Zeichen verwendet habe. Ich würde den Fehler erhalten:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: ord() expected a character, but string of length 3 found
Gibt es eine Möglichkeit, dies zu tun?
Ein Generator Ausdruck könnte hier natürlicher sein, da Sie die Liste nicht wirklich benötigen. Einfach die eckigen Klammern innerhalb des 'Join'-Aufrufs loswerden:' ".join (chr (ord (letter) +1) für Buchstaben im Wert)' – Blckknght
danke @Blckknght, ich habe meine Antwort entsprechend aktualisiert – gtlambert