Buchstaben eines Strings gemäß ascii um eins erhöhen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Dexter1997
User
Beiträge: 92
Registriert: Sonntag 2. Dezember 2012, 21:13

Hallo, ich habe einen string, z.B.
frucht = "banane"

nun möchte ich, dass jeder buchstabe durch seinen alphabetischen nachfolger ersetzt wird.
frucht[1] += 1 funktioniert leider nicht
Wie könnte man das hinkriegen?
nezzcarth
User
Beiträge: 1633
Registriert: Samstag 16. April 2011, 12:47

Da gibt es verschiedene Varianten. Für "klassische" Methode brauchst du: Eine Schleife über die Buchstaben, die Funktionen chr() und ord() sowie ggf. den Modulo Operator. Mit einem Generatorausdruck ( ''.join( … ) ) kann man das in einer Zeile machen, für den Einstieg ist das aber vielleicht etwas viel. Um den richtigen Nachfolger zu bestimmen, solltest auch bedenken, dass Groß- und Kleinbuchstaben verschiedene ASCII-Codes haben und wie mit Sonderzeichen umzugehen ist. Alternativ kann man in Python auch die 'translate'-Methode von strings verwenden. Dafür musst du ein Dictionary als Übersetzungstabelle erzeugen.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

wenn du "Anregungen" brauchst: das ganze ist auch als ROT 1 Verschlüsselung bekannt. Für die ROT-Verschlüsselung findest du bergeweise Code-Beispiele im Netz.

Gruß, noisefloor
Antworten