Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Grundlagen Der Typumwandlung | Interaktionen Zwischen Verschiedenen Typen
Datentypen in Python

bookGrundlagen Der Typumwandlung

Die Typumwandlung ermöglicht den Wechsel zwischen den grundlegenden Python-Typen, sodass Werte verglichen, berechnet oder angezeigt werden können. Dieses Kapitel zeigt, wie man sicher konvertiert und wo Anfänger häufig Fehler machen.

Umwandlung zu int

int(x) erzeugt eine Ganzzahl.

  • Von einem int: gibt die gleiche Zahl zurück;
  • Von einem float: schneidet in Richtung Null ab (zum Beispiel gibt int(2.9) den Wert 2 zurück, int(-2.9) ergibt -2);
  • Von einem String: Der String muss eine Ganzzahl darstellen (optionale Leerzeichen und Vorzeichen sind erlaubt).

Gültige Umwandlungen

12345
print(int(7)) # 7 print(int(2.9)) # 2 - truncates toward zero print(int(-2.9)) # -2 print(int("42")) # 42 print(int(" -15 ")) # -15
copy

Diese lösen ValueError aus

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

Umwandlung in float

float(x) erzeugt eine Fließkommazahl.

  • Funktioniert für Ganzzahlen sowie für Zeichenketten im Dezimal- oder wissenschaftlichen Notationsformat;
  • Kommas sind in Python keine Dezimaltrennzeichen.

Gültige Umwandlungen

123
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
copy

Diese führen zu ValueError

1
float("2,5") # ValueError - use a dot, not a comma
copy

Umwandlung zu str

str(x) erzeugt eine menschenlesbare Zeichenketten-Darstellung. F-Strings werden bevorzugt, wenn Nachrichten erstellt werden.

12345
print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
copy

Umwandlung zu bool

bool(x) folgt den Truthiness-Regeln von Python.

  • Zahlen: 0 ist False, jede andere Zahl ist True;
  • Zeichenketten: "" (leer) ist False, jede nicht-leere Zeichenkette ist True (auch "0" und "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Zu vermeidende Fehler

  • int("2.5") löst einen ValueError aus – zuerst mit float() parsen, dann abschneiden oder runden;
  • Lokale Gewohnheit: "2,5" ist ungültig – verwende "2.5";
  • Unterstriche in Eingabestrings: "1_000" ist ungültig – Unterstriche zuerst entfernen: "1_000".replace("_", "");
  • Überraschung bei Wahrheitswerten: bool("0") ist True – vergleiche den Stringinhalt explizit, falls nötig, zum Beispiel s == "0".

1. Was ergibt jede Zeile?

2. Welcher Aufruf löst einen ValueError aus?

3. Wählen Sie die korrekte Aussage.

question-icon

Was ergibt jede Zeile?

int(3.9)
int(" -8 ")

bool("0")

Click or drag`n`drop items and fill in the blanks

question mark

Welcher Aufruf löst einen ValueError aus?

Select the correct answer

question mark

Wählen Sie die korrekte Aussage.

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 1

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 more about how type conversion works in Python?

What are some common errors beginners make with type conversion?

Can you show examples of converting between other types, like lists or dictionaries?

Awesome!

Completion rate improved to 5

bookGrundlagen Der Typumwandlung

Swipe um das Menü anzuzeigen

Die Typumwandlung ermöglicht den Wechsel zwischen den grundlegenden Python-Typen, sodass Werte verglichen, berechnet oder angezeigt werden können. Dieses Kapitel zeigt, wie man sicher konvertiert und wo Anfänger häufig Fehler machen.

Umwandlung zu int

int(x) erzeugt eine Ganzzahl.

  • Von einem int: gibt die gleiche Zahl zurück;
  • Von einem float: schneidet in Richtung Null ab (zum Beispiel gibt int(2.9) den Wert 2 zurück, int(-2.9) ergibt -2);
  • Von einem String: Der String muss eine Ganzzahl darstellen (optionale Leerzeichen und Vorzeichen sind erlaubt).

Gültige Umwandlungen

12345
print(int(7)) # 7 print(int(2.9)) # 2 - truncates toward zero print(int(-2.9)) # -2 print(int("42")) # 42 print(int(" -15 ")) # -15
copy

Diese lösen ValueError aus

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

Umwandlung in float

float(x) erzeugt eine Fließkommazahl.

  • Funktioniert für Ganzzahlen sowie für Zeichenketten im Dezimal- oder wissenschaftlichen Notationsformat;
  • Kommas sind in Python keine Dezimaltrennzeichen.

Gültige Umwandlungen

123
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
copy

Diese führen zu ValueError

1
float("2,5") # ValueError - use a dot, not a comma
copy

Umwandlung zu str

str(x) erzeugt eine menschenlesbare Zeichenketten-Darstellung. F-Strings werden bevorzugt, wenn Nachrichten erstellt werden.

12345
print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
copy

Umwandlung zu bool

bool(x) folgt den Truthiness-Regeln von Python.

  • Zahlen: 0 ist False, jede andere Zahl ist True;
  • Zeichenketten: "" (leer) ist False, jede nicht-leere Zeichenkette ist True (auch "0" und "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Zu vermeidende Fehler

  • int("2.5") löst einen ValueError aus – zuerst mit float() parsen, dann abschneiden oder runden;
  • Lokale Gewohnheit: "2,5" ist ungültig – verwende "2.5";
  • Unterstriche in Eingabestrings: "1_000" ist ungültig – Unterstriche zuerst entfernen: "1_000".replace("_", "");
  • Überraschung bei Wahrheitswerten: bool("0") ist True – vergleiche den Stringinhalt explizit, falls nötig, zum Beispiel s == "0".

1. Was ergibt jede Zeile?

2. Welcher Aufruf löst einen ValueError aus?

3. Wählen Sie die korrekte Aussage.

question-icon

Was ergibt jede Zeile?

int(3.9)
int(" -8 ")

bool("0")

Click or drag`n`drop items and fill in the blanks

question mark

Welcher Aufruf löst einen ValueError aus?

Select the correct answer

question mark

Wählen Sie die korrekte Aussage.

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 1
some-alt