Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Grundläggande Typkonvertering | Interaktioner Mellan Olika Datatyper
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Datatyper i Python

bookGrundläggande Typkonvertering

Typomvandling möjliggör övergång mellan grundläggande Python-typer så att värden kan jämföras, beräknas eller visas.

Omvandla till int

int(x) skapar ett heltal.

  • Från ett heltal: returnerar samma tal;
  • Från ett flyttal: trunkerar mot noll (till exempel, int(2.9) returnerar 2, int(-2.9) returnerar -2);
  • Från en sträng: strängen måste representera ett heltal (valfria mellanslag och tecken är tillåtna).

Giltiga omvandlingar

12345678910
# Converting different types of user input to integers age_input = " 42 " temperature_reading = 2.9 negative_balance = -2.9 print(int(age_input)) # 42 → clean string converted to int print(int(temperature_reading)) # 2 → fractional part truncated print(int(negative_balance)) # -2 → also truncates toward zero print(int("7")) # 7 → string number becomes integer print(int(" -15 ")) # -15 → handles spaces and sign
copy

Dessa ger ValueError

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

Konvertera till float

float(x) skapar ett flyttal.

  • Fungerar för heltal och strängar i decimal- eller vetenskaplig notation;
  • Kommatecken är inte decimaltecken i Python.

Giltiga konverteringar

12345678
# Converting numeric inputs for a shopping calculator quantity = 3 price_str = "2.5" discount_factor = "1e3" # scientific notation for 1000 print(float(quantity)) # 3.0 → integer converted to float print(float(price_str)) # 2.5 → string price converted to float print(float(discount_factor)) # 1000.0 → converts from scientific notation
copy

Dessa ger ValueError

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

Konvertera till str

str(x) skapar en människoläsbar strängrepresentation. Använd f-strängar vid sammansättning av meddelanden.

12345678910
# Formatting a student's exam result student_age = 42 average_score = 3.5 print(str(student_age)) # "42" → number converted to string print(str(average_score)) # "3.5" → float converted to string student_name, final_score = "Ada", 98 report_message = f"{student_name} scored {final_score} points on the exam." print(report_message)
copy

Konvertera till bool

bool(x) följer Pythons sanningsvärdesregler.

  • Tal: 0 är False, alla andra tal är True;
  • Strängar: "" (tom) är False, alla icke-tomma strängar är True (även "0" och "False").
123456789101112
# Checking how different user inputs behave as boolean values login_attempts = 0 notifications = 7 username = "" user_id = "0" status = "False" print(bool(login_attempts)) # False → 0 means no attempts yet print(bool(notifications)) # True → non-zero means new notifications print(bool(username)) # False → empty string means no username entered print(bool(user_id)) # True → any non-empty string is truthy print(bool(status)) # True → text "False" is still a non-empty string
copy

Misstag att undvika

  • int("2.5") ger ValueError – tolka som float() först, sedan trunkera eller avrunda;
  • Lokala vanor: "2,5" är ogiltigt – använd "2.5";
  • Understreck i inmatningssträngar: "1_000" är ogiltigt – ta bort understreck först: "1_000".replace("_", "");
  • Sanningsvärde-fälla: bool("0") är True – jämför stränginnehåll explicit vid behov, till exempel s == "0".

1. Vad ger varje rad för resultat?

2. Vilket anrop ger ett ValueError?

3. Välj det korrekta påståendet.

question-icon

Vad ger varje rad för resultat?

int(3.9)
int(" -8 ")

bool("0")

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

question mark

Vilket anrop ger ett ValueError?

Select the correct answer

question mark

Välj det korrekta påståendet.

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 1

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

bookGrundläggande Typkonvertering

Svep för att visa menyn

Typomvandling möjliggör övergång mellan grundläggande Python-typer så att värden kan jämföras, beräknas eller visas.

Omvandla till int

int(x) skapar ett heltal.

  • Från ett heltal: returnerar samma tal;
  • Från ett flyttal: trunkerar mot noll (till exempel, int(2.9) returnerar 2, int(-2.9) returnerar -2);
  • Från en sträng: strängen måste representera ett heltal (valfria mellanslag och tecken är tillåtna).

Giltiga omvandlingar

12345678910
# Converting different types of user input to integers age_input = " 42 " temperature_reading = 2.9 negative_balance = -2.9 print(int(age_input)) # 42 → clean string converted to int print(int(temperature_reading)) # 2 → fractional part truncated print(int(negative_balance)) # -2 → also truncates toward zero print(int("7")) # 7 → string number becomes integer print(int(" -15 ")) # -15 → handles spaces and sign
copy

Dessa ger ValueError

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

Konvertera till float

float(x) skapar ett flyttal.

  • Fungerar för heltal och strängar i decimal- eller vetenskaplig notation;
  • Kommatecken är inte decimaltecken i Python.

Giltiga konverteringar

12345678
# Converting numeric inputs for a shopping calculator quantity = 3 price_str = "2.5" discount_factor = "1e3" # scientific notation for 1000 print(float(quantity)) # 3.0 → integer converted to float print(float(price_str)) # 2.5 → string price converted to float print(float(discount_factor)) # 1000.0 → converts from scientific notation
copy

Dessa ger ValueError

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

Konvertera till str

str(x) skapar en människoläsbar strängrepresentation. Använd f-strängar vid sammansättning av meddelanden.

12345678910
# Formatting a student's exam result student_age = 42 average_score = 3.5 print(str(student_age)) # "42" → number converted to string print(str(average_score)) # "3.5" → float converted to string student_name, final_score = "Ada", 98 report_message = f"{student_name} scored {final_score} points on the exam." print(report_message)
copy

Konvertera till bool

bool(x) följer Pythons sanningsvärdesregler.

  • Tal: 0 är False, alla andra tal är True;
  • Strängar: "" (tom) är False, alla icke-tomma strängar är True (även "0" och "False").
123456789101112
# Checking how different user inputs behave as boolean values login_attempts = 0 notifications = 7 username = "" user_id = "0" status = "False" print(bool(login_attempts)) # False → 0 means no attempts yet print(bool(notifications)) # True → non-zero means new notifications print(bool(username)) # False → empty string means no username entered print(bool(user_id)) # True → any non-empty string is truthy print(bool(status)) # True → text "False" is still a non-empty string
copy

Misstag att undvika

  • int("2.5") ger ValueError – tolka som float() först, sedan trunkera eller avrunda;
  • Lokala vanor: "2,5" är ogiltigt – använd "2.5";
  • Understreck i inmatningssträngar: "1_000" är ogiltigt – ta bort understreck först: "1_000".replace("_", "");
  • Sanningsvärde-fälla: bool("0") är True – jämför stränginnehåll explicit vid behov, till exempel s == "0".

1. Vad ger varje rad för resultat?

2. Vilket anrop ger ett ValueError?

3. Välj det korrekta påståendet.

question-icon

Vad ger varje rad för resultat?

int(3.9)
int(" -8 ")

bool("0")

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

question mark

Vilket anrop ger ett ValueError?

Select the correct answer

question mark

Välj det korrekta påståendet.

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 1
some-alt