View Categories

6. Operatori aritmetici, di confronto e logici

Operatori
Operatori

Gli operatori in Python sono simboli speciali che indicano una particolare operazione da eseguire sui dati.

Operatori aritmetici #

Operatori aritmetici
Operatori aritmetici

Addizioni #

L’operatore di addizione “+” esegue la somma di due valori:

a = 5
b = 3
c = a + b
print(c)  # output: 8

Sottrazioni #

L’operatore di sottrazione “-“ esegue la differenza tra due valori:

a = 5
b = 3
c = a - b
print(c)  # output: 2

Moltiplicazione #

L’operatore di moltiplicazione “*” esegue la moltiplicazione tra due valori:

a = 5
b = 3
c = a * b
print(c)  # output: 15

Divisione #

L’operatore di divisione “/” esegue la divisione tra due valori:

a = 5
b = 3
c = a / b
print(c)  # output: 1.6666666666666667

Divisione intera #

Possiamo anche utilizzare l’operatore di divisione intera “//” che restituisce solo il quoziente intero della divisione:

a = 5
b = 3
c = a // b
print(c)  # output: 1

Modulo #

L’operatore di modulo “%” restituisce il resto della divisione tra due valori:

a = 5
b = 3
c = a % b
print(c)  # output: 2

Elevamento a potenza #

L’operatore di esponente “**” esegue l’elevamento a potenza:

a = 5
b = 3
c = a ** b
print(c)  # output: 125

Operatori di confronto #

Operatori di confronto
Operatori di confronto

In Python, gli operatori di confronto (o relazionali) sono utilizzati per confrontare due valori e restituire un valore booleano (True o False) in base al risultato del confronto.

I principali operatori di confronto disponibili in Python:

  • == (uguaglianza) restituisce True se due valori sono uguali, False altrimenti. Ad esempio, 5 == 5 restituisce True, mentre 5 == 3 restituisce False.
  • != (diverso) restituisce True se due valori sono diversi, False altrimenti. Ad esempio, 5 != 3 restituisce True, mentre 5 != 5 restituisce False.
  • > (maggiore) restituisce True se il primo valore è maggiore del secondo, False altrimenti. Ad esempio, 5 > 3 restituisce True, mentre 3 > 5 restituisce False.
  • < (minore) restituisce True se il primo valore è minore del secondo, False altrimenti. Ad esempio, 3 < 5 restituisce True, mentre 5 < 3 restituisce False.
  • >= (maggiore o uguale) restituisce True se il primo valore è maggiore o uguale al secondo, False altrimenti. Ad esempio, 5 >= 3 restituisce True, mentre 3 >= 5 restituisce False.
  • <= (minore o uguale) restituisce True se il primo valore è minore o uguale al secondo, False altrimenti. Ad esempio, 3 <= 5 restituisce True, mentre 5 <= 3 restituisce False.

Esempio di codice:

x = 5
y = 3

# Uguaglianza
print(x == y)   # Restituisce False

# Diverso
print(x != y)   # Restituisce True

# Maggiore
print(x > y)    # Restituisce True

# Minore
print(x < y)    # Restituisce False

# Maggiore o uguale
print(x >= y)   # Restituisce True

# Minore o uguale
print(x <= y)   # Restituisce False

In questo esempio, x e y sono due variabili intere. Gli operatori di confronto vengono utilizzati per confrontare i valori delle due variabili e restituire un valore booleano (True o False) in base al risultato del confronto.

Il primo confronto x == y restituisce False, poiché x è uguale a 5 e y è uguale a 3. 
Il secondo confronto x != y restituisce True, poiché x è diverso da y.
Il terzo confronto x > y restituisce True, poiché x è maggiore di y.
Il quarto confronto x < y restituisce False, poiché x è maggiore di y.
Il quinto confronto x >= y restituisce True, poiché x è maggiore o uguale a y.
Infine, il sesto confronto x <= y restituisce False, poiché x non è minore o uguale a y.

Operatori logici #

Operatori logici
Operatori logici

Gli operatori di confronto possono essere utilizzati in combinazione con gli operatori logici (and, or, not) per creare espressioni booleane più complesse.

 Ecco come funzionano:

  • and restituisce True se entrambi gli operandi sono True, altrimenti restituisce False.
  • or restituisce True se almeno uno degli operandi è True, altrimenti restituisce False.
  • not restituisce l’opposto del valore dell’operando, ovvero True se l’operando è False, e viceversa.

 Ad esempio:

x = 5
y = 3
z = 7

# Esempio con and
if x > y and z > x:
    print("Entrambi i controlli sono veri")

# Esempio con or
if x < y or z < x:
    print("Almeno uno dei due controlli è verificato")

# Esempio con not
if not x == y:
    print("x e y non sono uguali")

In questo esempio, la prima istruzione if utilizza l’operatore and per verificare se x è maggiore di y e se z è maggiore di x. Se entrambe le condizioni sono vere, la stringa “Entrambi i controlli sono veri” viene stampata a schermo.

La seconda istruzione if utilizza l’operatore or per verificare se x è minore di y o se z è minore di x. Se almeno una delle due condizioni è vera, la stringa “Almeno uno dei due controlli è verificato” viene stampata a schermo.

La terza istruzione if utilizza l’operatore not per verificare se x è diverso da y. In questo caso, l’operatore not viene applicato alla condizione x == y, che è falsa, quindi la stringa “x e y non sono uguali” viene stampata a schermo.

Gli operatori logici and, or e not sono molto utili quando si scrivono script complessi in cui è necessario eseguire più controlli condizionali.