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

Operatori

Gli operatori sono i simboli che combinano valori per produrne di nuovi. Python condivide la maggior parte degli operatori con altri linguaggi, ma ne introduce alcuni propri molto utili.

Operatori aritmetici

Python
3 + 2     # 5      somma
3 - 2     # 1      differenza
3 * 2     # 6      prodotto
7 / 2     # 3.5    divisione (restituisce SEMPRE float)
7 // 2    # 3      divisione intera (tronca verso il basso)
7 % 2     # 1      resto (modulo)
2 ** 10   # 1024   potenza

Operatori di confronto

Restituiscono un bool (True o False):

Python
3 == 3        # True   uguaglianza
3 != 4        # True   diversità
3 < 4         # True   minore
3 <= 3        # True   minore o uguale
"a" < "b"     # True   confronto lessicografico

A differenza di JavaScript, in Python esiste un solo operatore di uguaglianza (==): non c'è bisogno di scegliere fra == e ===.

Operatori logici

Si scrivono con le parole inglesi, non con i simboli:

Python
True and False    # False
True or False     # True
not True          # False

Hanno anche un comportamento di short-circuit utilissimo: a and b restituisce a se è "falsy", altrimenti b.

Cosa conta come "falsy"

In Python sono considerati falsi: False, None, 0, 0.0, stringa vuota "", lista vuota [], dict vuoto {}. Tutto il resto è considerato vero.

Priorità in breve

Da memorizzare: *** / // %+ - → confronti → notandor. In caso di dubbio, usa le parentesi: non costano niente e rendono il codice più leggibile.

Divisione intera e arrotondamento

L'operatore di divisione intera // tronca sempre il risultato verso il basso (floor). Questo significa che per i numeri positivi 7 // 2 fa 3, ma per i numeri negativi -7 // 2 fa -4. L'operatore modulo % calcola il resto della divisione intera ed è molto usato per determinare se un numero è multiplo di un altro (es. n % 2 == 0 verifica se n è pari).

Prova tu

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

Calcola il quadrato di 9 più il cubo di 2 e assegnalo a `result`. Valuta poi `result`.

Caricamento editor…
Mostra suggerimento

9 ** 2 è 81, 2 ** 3 è 8: somma 89.

Soluzione disponibile dopo 3 tentativi

Esercizio di ripasso

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

Crea una variabile `is_even` che dica (True/False) se il numero 17 è pari, usando l'operatore modulo.

Caricamento editor…
Mostra suggerimento

Un numero è pari quando il suo resto modulo 2 è 0.

Soluzione disponibile dopo 3 tentativi

Sfida aggiuntiva

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

Usa la divisione intera per calcolare quante volte il 3 sta nel 10, calcola il resto usando il modulo, e verifica se tale resto è diverso da 0. Salva il verdetto booleano in `is_not_multiple`. Valuta infine la variabile.

Caricamento editor…
Mostra suggerimento

Usa 10 // 3 per la divisione intera e 10 % 3 per il resto.

Soluzione disponibile dopo 3 tentativi