Vai al contenuto
eLearner.app
Modulo 1 · Lezione 1 di 41/36 nel corso~10 min
Lezioni del modulo (1/4)

Variabili e tipi

In Python una variabile è semplicemente un nome a cui leghiamo un valore. Non c'è bisogno di dichiararla con una parola chiave come in JavaScript: basta assegnarle qualcosa con il simbolo =.

Python
saluto = "Ciao, mondo!"
anni = 30
pi_greco = 3.14
attivo = True

Da quel momento in poi, ogni volta che scrivi saluto Python lo sostituisce con la stringa "Ciao, mondo!".

Tipi predefiniti che incontrerai sempre

I cinque tipi di base che userai nelle prime settimane sono:

  • int — numeri interi, senza limiti di grandezza: 42, -7, 1_000_000.
  • float — numeri con virgola: 3.14, -0.5, 2e10.
  • str — testo, fra apici singoli o doppi: "ciao", 'mondo'.
  • bool — valori di verità: True o False (maiuscoli!).
  • NoneType — l'unica istanza è None, l'equivalente del "valore assente".

Puoi sempre chiedere il tipo di un valore con la funzione type(...):

Python
type(42)        # <class 'int'>
type(3.14)      # <class 'float'>
type("ciao")    # <class 'str'>
type(True)      # <class 'bool'>
type(None)      # <class 'NoneType'>

Riassegnazione e tipi dinamici

Python è dinamicamente tipizzato: una stessa variabile può puntare nel tempo a valori di tipo diverso. Non è una buona pratica abusarne, ma è legale:

Python
x = 10        # ora x è int
x = "dieci"   # ora x è str

L'ultima espressione viene mostrata

Nei nostri esercizi (e nel Playground) l'ultima espressione di un blocco viene catturata come "valore di ritorno" e mostrata accanto al panel di output, in stile REPL. Quindi puoi scrivere semplicemente il nome di una variabile come ultima riga per visualizzarne il valore.

Convenzioni e tipizzazione forte

Python è un linguaggio a tipizzazione forte (strong typing): non esegue conversioni implicite di tipo tra tipi incompatibili. Ad esempio, sommare una stringa e un intero ("Anni: " + 30) solleverà un TypeError. Per farlo, occorre convertire esplicitamente il numero in stringa usando str(30). Inoltre, le variabili in Python sono riferimenti a oggetti in memoria: quando scrivi a = 5 e poi b = a, entrambe le variabili puntano allo stesso intero in memoria.

Prova tu

Esercizio#python.m1.l1.e1
Tentativi: 0Caricamento…

Crea una variabile `greeting` con il valore 'Ciao, mondo!' e poi valuta `greeting` come ultima espressione.

Caricamento editor…
Mostra suggerimento

In Python non serve una parola chiave: basta `nome = valore`.

Soluzione disponibile dopo 3 tentativi

Esercizio di ripasso

Esercizio#python.m1.l1.e2
Tentativi: 0Caricamento…

Crea una variabile `age_type` che contenga il tipo del valore 30 (suggerimento: usa la funzione type).

Caricamento editor…
Mostra suggerimento

type(30) restituisce <class 'int'>.

Soluzione disponibile dopo 3 tentativi

Sfida aggiuntiva

Esercizio#python.m1.l1.e3
Tentativi: 0Caricamento…

Crea una variabile `height` con il valore float `1.75`. Successivamente, ottieni il suo tipo e assegnalo alla variabile `height_type`. Valuta infine `height_type`.

Caricamento editor…
Mostra suggerimento

Usa type(height) per ottenere il tipo del float e assegnalo a height_type.

Soluzione disponibile dopo 3 tentativi