Hallo,
ich habe ein wahrscheinlich sehr einfaches Problem, an dem ich mir aber die Zähne ausbeiße.
Ich möchte in einer Zeichenkette Zeichen unabhängig vom Inhalt ersetzen und dachte, das ginge etwa so:
s[15:20] = "12345"
Leider sind solche "normalen" Sequenz-Operationen mit einer Zeichenkette nicht möglich.
Was kann man da machen?
Danke
Sequenz-Operationen in Zeichenketten
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Du kannst Zeichenketten nicht verändern. Du musst also eine neue anlegen, etwa so:
Natürlich ungetestet Aber ich denke Prinzip sollte klar sein.
Code: Alles auswählen
a = "Test"
a = a[0] + "was neues" + a[1:]
Strings sind in Python konstant und nicht veränderbar. Du musst einen neuen String bauen.
Stefan
Code: Alles auswählen
s = s[:15] + "12345" + s[20:]
Danke für all eure Antworten.
An solche Sachen wie "String neu aufbauen" und replace() hatte ich schon gedacht, aber mir kam das zu sehr nach Holzhammermethode vor. Normalerweise gibt es da doch immer eine elegante/schnelle Lösung. replace() nicht so optimal, weil ich immer erst feststellen muss, was dort steht, um es dann zu ersetzen, obwohl es eigentlich egal ist.
An solche Sachen wie "String neu aufbauen" und replace() hatte ich schon gedacht, aber mir kam das zu sehr nach Holzhammermethode vor. Normalerweise gibt es da doch immer eine elegante/schnelle Lösung. replace() nicht so optimal, weil ich immer erst feststellen muss, was dort steht, um es dann zu ersetzen, obwohl es eigentlich egal ist.