Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Grunnleggende om Typekonvertering | Interaksjoner Mellom Ulike Datatyper
Datatyper i Python

bookGrunnleggende om Typekonvertering

Typekonvertering gjør det mulig å bevege seg mellom grunnleggende Python-typer slik at verdier kan sammenlignes, beregnes eller vises.

Konvertering til int

int(x) lager et heltall.

  • Fra en int: returnerer det samme tallet;
  • Fra en float: trunkerer mot null (for eksempel, int(2.9) gir 2, int(-2.9) gir -2);
  • Fra en streng: strengen må representere et heltall (valgfritt mellomrom og fortegn er tillatt). Python tillater også understreker inne i sifre, som "1_000" — men kun hvis:
  • Understreken er mellom sifre;
  • Den er ikke i begynnelsen eller slutten ("_100", "100_");
  • Den er ikke gjentatt eller ved siden av et desimalpunktum ("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 gir ValueError

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

Konvertering til float

float(x) lager et flyttall.

  • Fungerer for heltall og desimal- eller vitenskapelig-notasjon-strenger ("3.14", "1e2", "5E-3");
  • Komma er ikke desimaltegn i Python ("2,5", "2.5");
  • Python tillater understreker inne i sifre i numeriske strenger, men kun hvis:
  • Understreken er mellom sifre;
  • Den er ikke i begynnelsen eller slutten ("_3.14", "3.14_");
  • Den er ikke ved siden av desimalpunktumet eller gjentatt ("3_.14", "3.__14");
  • Vitenskapelig notasjon må også følge disse reglene ("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 gir ValueError

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

Konvertering til str

str(x) lager en menneskelesbar strengrepresentasjon. Foretrekk f-strenger når du bygger meldinger.

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 sannhetsverdi-regler.

  • Tall: 0 er False, alle andre tall er True;
  • Strenger: "" (tom) er False, enhver ikke-tom streng er True (også "0" og "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Feil å unngå

  • int("2.5") gir ValueError – bruk float() først, deretter trunker eller rund av;
  • Lokal vane: "2,5" er ugyldig – bruk "2.5";
  • Overraskelse med sannhetsverdi: bool("0") er True – sammenlign strenginnhold eksplisitt om nødvendig, for eksempel s == "0".

1. Hvilket kall gir en ValueError?

2. Velg den korrekte påstanden.

question mark

Hvilket kall gir en ValueError?

Select the correct answer

question mark

Velg den korrekte påstanden.

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 1

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

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?

bookGrunnleggende om Typekonvertering

Sveip for å vise menyen

Typekonvertering gjør det mulig å bevege seg mellom grunnleggende Python-typer slik at verdier kan sammenlignes, beregnes eller vises.

Konvertering til int

int(x) lager et heltall.

  • Fra en int: returnerer det samme tallet;
  • Fra en float: trunkerer mot null (for eksempel, int(2.9) gir 2, int(-2.9) gir -2);
  • Fra en streng: strengen må representere et heltall (valgfritt mellomrom og fortegn er tillatt). Python tillater også understreker inne i sifre, som "1_000" — men kun hvis:
  • Understreken er mellom sifre;
  • Den er ikke i begynnelsen eller slutten ("_100", "100_");
  • Den er ikke gjentatt eller ved siden av et desimalpunktum ("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 gir ValueError

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

Konvertering til float

float(x) lager et flyttall.

  • Fungerer for heltall og desimal- eller vitenskapelig-notasjon-strenger ("3.14", "1e2", "5E-3");
  • Komma er ikke desimaltegn i Python ("2,5", "2.5");
  • Python tillater understreker inne i sifre i numeriske strenger, men kun hvis:
  • Understreken er mellom sifre;
  • Den er ikke i begynnelsen eller slutten ("_3.14", "3.14_");
  • Den er ikke ved siden av desimalpunktumet eller gjentatt ("3_.14", "3.__14");
  • Vitenskapelig notasjon må også følge disse reglene ("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 gir ValueError

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

Konvertering til str

str(x) lager en menneskelesbar strengrepresentasjon. Foretrekk f-strenger når du bygger meldinger.

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 sannhetsverdi-regler.

  • Tall: 0 er False, alle andre tall er True;
  • Strenger: "" (tom) er False, enhver ikke-tom streng er True (også "0" og "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Feil å unngå

  • int("2.5") gir ValueError – bruk float() først, deretter trunker eller rund av;
  • Lokal vane: "2,5" er ugyldig – bruk "2.5";
  • Overraskelse med sannhetsverdi: bool("0") er True – sammenlign strenginnhold eksplisitt om nødvendig, for eksempel s == "0".

1. Hvilket kall gir en ValueError?

2. Velg den korrekte påstanden.

question mark

Hvilket kall gir en ValueError?

Select the correct answer

question mark

Velg den korrekte påstanden.

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 1
some-alt