Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Unveränderlichkeit von Strings | Zeichenketten
Datentypen in Python

bookUnveränderlichkeit von Strings

In Python sind Zeichenketten (Strings) unveränderlich: Nach ihrer Erstellung können die enthaltenen Zeichen nicht direkt verändert werden. Jede "Änderung" erzeugt tatsächlich eine neue Zeichenkette. Dies ist wichtig für die Korrektheit (keine unbeabsichtigten Änderungen am Original) und für die Performance (wie größere Zeichenketten aufgebaut werden).

Keine Änderungen am Original

Zeichen können per Index gelesen, aber nicht zugewiesen werden.

123456
s = "hello" t = "H" + s[1:] # Creates a new string: "Hello" print(t) s[0] = "H" # TypeError: strings don't support item assignment
copy

Die meisten String-Methoden geben einen neuen String zurück und lassen das Original unverändert.

12345678
# Cleaning up user input from a registration form user_name = " Alice " user_name.strip() # returns "Alice", but the variable still has spaces print(user_name) # " Alice " user_name = user_name.strip() # assign the cleaned value back print(user_name) # "Alice" → cleaned and ready to store
copy

Verkettung ist möglich, aber beachten Sie, dass bei jedem Schritt ein neues Objekt erzeugt wird.

123456
# Normalizing a user's chat message before saving it user_message = " hello\n" clean_message = user_message.strip().upper() print(user_message) # original remains " hello\n" print(clean_message) # "HELLO" → cleaned and ready for processing
copy

"Modifizieren" durch Erstellen einer neuen Zeichenkette

Verwendung von Slicing, replace oder Verkettung zur Erzeugung eines neuen Werts.

1234567
s = "data" s = s.replace("t", "T") # "daTa" print(s) s = s[:1] + "A" + s[2:] # "dAta" print(s)
copy

Effizientes Erstellen

Wiederholtes + in großen Schleifen kann langsam sein (viele Zwischenstrings). Ein gängiges Muster ist es, Teile zu sammeln und einmalig zusammenzufügen:

1234
# Combining message parts received from a device response_parts = ["Status:", " ", "200", "\n", "Success"] response_message = "".join(response_parts) # "Status: 200\nSuccess" print(response_message)
copy
Note
Hinweis

Weitere Muster zum Zusammenfügen und Formatieren werden im nächsten Kapitel behandelt.

1. Welche Zeile versucht, einen String an Ort und Stelle zu ändern und führt zu einem Fehler?

2. Was gibt der Code aus?

3. Es soll ein langer String aus vielen kleinen Teilen zusammengesetzt werden. Was wird empfohlen?

question mark

Welche Zeile versucht, einen String an Ort und Stelle zu ändern und führt zu einem Fehler?

Select the correct answer

question mark

Was gibt der Code aus?

Select the correct answer

question mark

Es soll ein langer String aus vielen kleinen Teilen zusammengesetzt werden. Was wird empfohlen?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 4

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

Can you explain why string immutability is important in Python?

What are some common mistakes beginners make with string immutability?

Can you show more examples of efficient string building?

Awesome!

Completion rate improved to 3.45

bookUnveränderlichkeit von Strings

Swipe um das Menü anzuzeigen

In Python sind Zeichenketten (Strings) unveränderlich: Nach ihrer Erstellung können die enthaltenen Zeichen nicht direkt verändert werden. Jede "Änderung" erzeugt tatsächlich eine neue Zeichenkette. Dies ist wichtig für die Korrektheit (keine unbeabsichtigten Änderungen am Original) und für die Performance (wie größere Zeichenketten aufgebaut werden).

Keine Änderungen am Original

Zeichen können per Index gelesen, aber nicht zugewiesen werden.

123456
s = "hello" t = "H" + s[1:] # Creates a new string: "Hello" print(t) s[0] = "H" # TypeError: strings don't support item assignment
copy

Die meisten String-Methoden geben einen neuen String zurück und lassen das Original unverändert.

12345678
# Cleaning up user input from a registration form user_name = " Alice " user_name.strip() # returns "Alice", but the variable still has spaces print(user_name) # " Alice " user_name = user_name.strip() # assign the cleaned value back print(user_name) # "Alice" → cleaned and ready to store
copy

Verkettung ist möglich, aber beachten Sie, dass bei jedem Schritt ein neues Objekt erzeugt wird.

123456
# Normalizing a user's chat message before saving it user_message = " hello\n" clean_message = user_message.strip().upper() print(user_message) # original remains " hello\n" print(clean_message) # "HELLO" → cleaned and ready for processing
copy

"Modifizieren" durch Erstellen einer neuen Zeichenkette

Verwendung von Slicing, replace oder Verkettung zur Erzeugung eines neuen Werts.

1234567
s = "data" s = s.replace("t", "T") # "daTa" print(s) s = s[:1] + "A" + s[2:] # "dAta" print(s)
copy

Effizientes Erstellen

Wiederholtes + in großen Schleifen kann langsam sein (viele Zwischenstrings). Ein gängiges Muster ist es, Teile zu sammeln und einmalig zusammenzufügen:

1234
# Combining message parts received from a device response_parts = ["Status:", " ", "200", "\n", "Success"] response_message = "".join(response_parts) # "Status: 200\nSuccess" print(response_message)
copy
Note
Hinweis

Weitere Muster zum Zusammenfügen und Formatieren werden im nächsten Kapitel behandelt.

1. Welche Zeile versucht, einen String an Ort und Stelle zu ändern und führt zu einem Fehler?

2. Was gibt der Code aus?

3. Es soll ein langer String aus vielen kleinen Teilen zusammengesetzt werden. Was wird empfohlen?

question mark

Welche Zeile versucht, einen String an Ort und Stelle zu ändern und führt zu einem Fehler?

Select the correct answer

question mark

Was gibt der Code aus?

Select the correct answer

question mark

Es soll ein langer String aus vielen kleinen Teilen zusammengesetzt werden. Was wird empfohlen?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 4
some-alt