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
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. Detta kapitel visar hur man konverterar säkert och var nybörjare ofta gör misstag.

Konvertera 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 konverteringar

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

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

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

Dessa ger ValueError

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

Konvertera till str

str(x) skapar en läsbar strängrepresentation. Använd f-strängar när du bygger meddelanden.

12345
print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
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").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
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ärdesöverraskning: 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

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

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. Detta kapitel visar hur man konverterar säkert och var nybörjare ofta gör misstag.

Konvertera 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 konverteringar

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

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

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

Dessa ger ValueError

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

Konvertera till str

str(x) skapar en läsbar strängrepresentation. Använd f-strängar när du bygger meddelanden.

12345
print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
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").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
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ärdesöverraskning: 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