Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Fondamenti della Conversione di Tipo | Interazioni tra Tipi Diversi
Tipi di Dati in Python

bookFondamenti della Conversione di Tipo

La conversione di tipo consente di passare tra i tipi fondamentali di Python, così i valori possono essere confrontati, calcolati o visualizzati. Questo capitolo mostra come convertire in modo sicuro e dove i principianti spesso commettono errori.

Conversione a int

int(x) crea un intero.

  • Da un int: restituisce lo stesso numero;
  • Da un float: tronca verso zero (ad esempio, int(2.9) restituisce 2, int(-2.9) restituisce -2);
  • Da una stringa: la stringa deve rappresentare un intero (spazi e segno opzionali sono accettati).

Conversioni valide

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

Questi generano ValueError

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

Conversione a float

float(x) crea un numero a virgola mobile.

  • Funziona con interi e stringhe in notazione decimale o scientifica;
  • Le virgole non sono punti decimali in Python.

Conversioni valide

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

Questi generano ValueError

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

Conversione a str

str(x) produce una rappresentazione in stringa leggibile dall'uomo. Preferire gli f-string quando si costruiscono messaggi.

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

Conversione a bool

bool(x) segue le regole di veridicità di Python.

  • Numeri: 0 è False, qualsiasi altro numero è True;
  • Stringhe: "" (vuota) è False, qualsiasi stringa non vuota è True (anche "0" e "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Errori da evitare

  • int("2.5") genera ValueError - analizzare prima come float(), poi troncare o arrotondare;
  • Abitudine locale: "2,5" non è valido - usare "2.5";
  • Underscore nelle stringhe di input: "1_000" non è valido - rimuovere prima gli underscore: "1_000".replace("_", "");
  • Sorpresa nella veridicità: bool("0") restituisce True - confrontare esplicitamente il contenuto della stringa se necessario, ad esempio s == "0".

1. Cosa produce ciascuna riga?

2. Quale chiamata genera un ValueError?

3. Seleziona l'affermazione corretta.

question-icon

Cosa produce ciascuna riga?

int(3.9)
int(" -8 ")

bool("0")

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

question mark

Quale chiamata genera un ValueError?

Select the correct answer

question mark

Seleziona l'affermazione corretta.

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 1

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

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

bookFondamenti della Conversione di Tipo

Scorri per mostrare il menu

La conversione di tipo consente di passare tra i tipi fondamentali di Python, così i valori possono essere confrontati, calcolati o visualizzati. Questo capitolo mostra come convertire in modo sicuro e dove i principianti spesso commettono errori.

Conversione a int

int(x) crea un intero.

  • Da un int: restituisce lo stesso numero;
  • Da un float: tronca verso zero (ad esempio, int(2.9) restituisce 2, int(-2.9) restituisce -2);
  • Da una stringa: la stringa deve rappresentare un intero (spazi e segno opzionali sono accettati).

Conversioni valide

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

Questi generano ValueError

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

Conversione a float

float(x) crea un numero a virgola mobile.

  • Funziona con interi e stringhe in notazione decimale o scientifica;
  • Le virgole non sono punti decimali in Python.

Conversioni valide

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

Questi generano ValueError

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

Conversione a str

str(x) produce una rappresentazione in stringa leggibile dall'uomo. Preferire gli f-string quando si costruiscono messaggi.

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

Conversione a bool

bool(x) segue le regole di veridicità di Python.

  • Numeri: 0 è False, qualsiasi altro numero è True;
  • Stringhe: "" (vuota) è False, qualsiasi stringa non vuota è True (anche "0" e "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Errori da evitare

  • int("2.5") genera ValueError - analizzare prima come float(), poi troncare o arrotondare;
  • Abitudine locale: "2,5" non è valido - usare "2.5";
  • Underscore nelle stringhe di input: "1_000" non è valido - rimuovere prima gli underscore: "1_000".replace("_", "");
  • Sorpresa nella veridicità: bool("0") restituisce True - confrontare esplicitamente il contenuto della stringa se necessario, ad esempio s == "0".

1. Cosa produce ciascuna riga?

2. Quale chiamata genera un ValueError?

3. Seleziona l'affermazione corretta.

question-icon

Cosa produce ciascuna riga?

int(3.9)
int(" -8 ")

bool("0")

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

question mark

Quale chiamata genera un ValueError?

Select the correct answer

question mark

Seleziona l'affermazione corretta.

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 1
some-alt