Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Grundlæggende Typekonvertering | Interaktioner Mellem Datatyper
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Datatyper i Python

bookGrundlæggende Typekonvertering

Typekonvertering muliggør overførsel mellem centrale Python-typer, så værdier kan sammenlignes, beregnes eller vises.

Konvertering til int

int(x) opretter et heltal.

  • Fra et heltal: returnerer det samme tal;
  • Fra et flydende tal: afkorter mod nul (for eksempel, int(2.9) returnerer 2, int(-2.9) returnerer -2);
  • Fra en streng: strengen skal repræsentere et heltal (valgfri mellemrum og fortegn er tilladt). Python tillader også understreger inde i cifre, såsom "1_000" — men kun hvis:
  • Understregen er mellem cifre;
  • Den er ikke i begyndelsen eller slutningen ("_100", "100_");
  • Den er ikke gentaget eller placeret ved siden af et decimalkomma ("1__000", "1_.5").

Gyldige konverteringer

1234567
age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15 print(int("1_00_0")) # 1000
copy

Disse udløser ValueError

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

Konvertering til float

float(x) opretter et flydende tal.

  • Fungerer for heltal og decimale eller videnskabelig notation-strenge ("3.14", "1e2", "5E-3");
  • Kommaer er ikke decimalseparatorer i Python ("2,5", "2.5");
  • Python tillader understreger i tal i numeriske strenge, men kun hvis:
  • Understregen er mellem cifre;
  • Den er ikke i starten eller slutningen ("_3.14", "3.14_");
  • Den er ikke ved siden af decimalseparatoren eller gentaget ("3_.14", "3.__14");
  • Videnskabelig notation skal også følge disse regler ("1e_3").

Gyldige konverteringer

1234
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
copy

Disse udløser ValueError

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

Konvertering til str

str(x) laver en menneskelæsbar strengrepræsentation. Foretræk f-strenge, når du opbygger beskeder.

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

Konvertering til bool

bool(x) følger Pythons sandhedsværdiregler.

  • Tal: 0 er False, alle andre tal er True;
  • Strenge: "" (tom) er False, enhver ikke-tom streng er True (selv "0" og "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Fejl at undgå

  • int("2.5") udløser ValueError – parse som float() først, derefter afkort eller rund af;
  • Lokal vane: "2,5" er ugyldig – brug "2.5";
  • Overraskelse ved sandhedsværdi: bool("0") er True – sammenlign strengens indhold eksplicit om nødvendigt, for eksempel s == "0".

1. Hvilket kald udløser en ValueError?

2. Vælg den korrekte påstand.

question mark

Hvilket kald udløser en ValueError?

Select the correct answer

question mark

Vælg den korrekte påstand.

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 1

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain more about how underscores work in numeric strings?

What happens if I try to convert a string with spaces or special characters to int or float?

Can you show examples of converting between these types in more complex scenarios?

bookGrundlæggende Typekonvertering

Stryg for at vise menuen

Typekonvertering muliggør overførsel mellem centrale Python-typer, så værdier kan sammenlignes, beregnes eller vises.

Konvertering til int

int(x) opretter et heltal.

  • Fra et heltal: returnerer det samme tal;
  • Fra et flydende tal: afkorter mod nul (for eksempel, int(2.9) returnerer 2, int(-2.9) returnerer -2);
  • Fra en streng: strengen skal repræsentere et heltal (valgfri mellemrum og fortegn er tilladt). Python tillader også understreger inde i cifre, såsom "1_000" — men kun hvis:
  • Understregen er mellem cifre;
  • Den er ikke i begyndelsen eller slutningen ("_100", "100_");
  • Den er ikke gentaget eller placeret ved siden af et decimalkomma ("1__000", "1_.5").

Gyldige konverteringer

1234567
age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15 print(int("1_00_0")) # 1000
copy

Disse udløser ValueError

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

Konvertering til float

float(x) opretter et flydende tal.

  • Fungerer for heltal og decimale eller videnskabelig notation-strenge ("3.14", "1e2", "5E-3");
  • Kommaer er ikke decimalseparatorer i Python ("2,5", "2.5");
  • Python tillader understreger i tal i numeriske strenge, men kun hvis:
  • Understregen er mellem cifre;
  • Den er ikke i starten eller slutningen ("_3.14", "3.14_");
  • Den er ikke ved siden af decimalseparatoren eller gentaget ("3_.14", "3.__14");
  • Videnskabelig notation skal også følge disse regler ("1e_3").

Gyldige konverteringer

1234
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
copy

Disse udløser ValueError

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

Konvertering til str

str(x) laver en menneskelæsbar strengrepræsentation. Foretræk f-strenge, når du opbygger beskeder.

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

Konvertering til bool

bool(x) følger Pythons sandhedsværdiregler.

  • Tal: 0 er False, alle andre tal er True;
  • Strenge: "" (tom) er False, enhver ikke-tom streng er True (selv "0" og "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Fejl at undgå

  • int("2.5") udløser ValueError – parse som float() først, derefter afkort eller rund af;
  • Lokal vane: "2,5" er ugyldig – brug "2.5";
  • Overraskelse ved sandhedsværdi: bool("0") er True – sammenlign strengens indhold eksplicit om nødvendigt, for eksempel s == "0".

1. Hvilket kald udløser en ValueError?

2. Vælg den korrekte påstand.

question mark

Hvilket kald udløser en ValueError?

Select the correct answer

question mark

Vælg den korrekte påstand.

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 1
some-alt