Python Tutorial: Tipi di Operatori del linguaggio di programmazione Python

Gli operatori nei linguaggi di programmazione sono simboli speciali, o parole chiave, che eseguono operazioni su variabili e valori.
Sono essenziali per eseguire varie attività come calcoli aritmetici, confronti logici e manipolazioni bit a bit.
Python è uno dei principali linguaggi per fare machine learning, per questo motivo gli operatori Python sono numerosi e più specializzati. Vediamoli insieme:
Tempo di lettura stimato: 5 minuti
Tipi di operatori in Python
Il linguaggio Python supporta i seguenti tipi di operatori:
- Operatori aritmetici
- Operatori (relazionali) di confronto
- Operatori di assegnazione
- Operatori logici
- Operatori bit a bit
- Operatori associativi
- Operatori di identità
Vediamo uno per uno tutti gli operatori.
Operatori aritmetici Python
Gli operatori aritmetici vengono utilizzati per eseguire operazioni matematiche di base come addizione, sottrazione, moltiplicazione, ecc.
Per ogni operatore aritmetico, riporto il nome, un esempio, l’associatività e la precedenza di applicazione.

Esempio di operatori aritmetici Python
a = 21
b = 10
c = 0
c = a + b
print ("a: {} b: {} a+b: {}".format(a,b,c))
c = a - b
print ("a: {} b: {} a-b: {}".format(a,b,c) )
c = a * b
print ("a: {} b: {} a*b: {}".format(a,b,c))
c = a / b
print ("a: {} b: {} a/b: {}".format(a,b,c))
c = a % b
print ("a: {} b: {} a%b: {}".format(a,b,c))
a = 2
b = 3
c = a**b
print ("a: {} b: {} a**b: {}".format(a,b,c))
a = 10
b = 5
c = a//b
print ("a: {} b: {} a//b: {}".format(a,b,c))
Avviando il codice sopra avremo il seguente risultato:
a: 21 b: 10 a+b: 31
a: 21 b: 10 a-b: 11
a: 21 b: 10 a*b: 210
a: 21 b: 10 a/b: 2.1
a: 21 b: 10 a%b: 1
a: 2 b: 3 a**b: 8
a: 10 b: 5 a//b: 2
Operatori di confronto
Gli operatori di confronto effettuano un confronto tra valori e decidono un risultato booleano, in base alla relazione. Sono anche chiamati operatori relazionali.
Per ogni operatore di confronto, riporto il nome, un esempio e l’associatività, essendo operatori binari, la precedenza non è definibile.

Esempio di operatori di confronto
a = 21
b = 10
if ( a == b ):
print ("Line 1 - a is equal to b")
else:
print ("Line 1 - a is not equal to b")
if ( a != b ):
print ("Line 2 - a is not equal to b")
else:
print ("Line 2 - a is equal to b")
if ( a < b ):
print ("Line 3 - a is less than b" )
else:
print ("Line 3 - a is not less than b")
if ( a > b ):
print ("Line 4 - a is greater than b")
else:
print ("Line 4 - a is not greater than b")
a,b=b,a #values of a and b swapped. a becomes 10, b becomes 21
if ( a <= b ):
print ("Line 5 - a is either less than or equal to b")
else:
print ("Line 5 - a is neither less than nor equal to b")
if ( b >= a ):
print ("Line 6 - b is either greater than or equal to b")
else:
print ("Line 6 - b is neither greater than nor equal to b")
Avviando il codice sopra avremo il seguente risultato:
Line 1 - a is not equal to b
Line 2 - a is not equal to b
Line 3 - a is not less than b
Line 4 - a is greater than b
Line 5 - a is either less than or equal to b
Line 6 - b is either greater than or equal to b
Operatori di assegnazione
Gli operatori di assegnazione vengono utilizzati per assegnare valori alle variabili. Di seguito è riportata una tabella che mostra tutti gli operatori di assegnazione Python.
Per ogni operatore di assegnazione, riporto il nome, un esempio e l’equivalenza.

Esempio di operatori di assegnazione
a = 21
b = 10
c = 0
print ("a: {} b: {} c : {}".format(a,b,c))
c = a + b
print ("a: {} c = a + b: {}".format(a,c))
c += a
print ("a: {} c += a: {}".format(a,c))
c *= a
print ("a: {} c *= a: {}".format(a,c))
c /= a
print ("a: {} c /= a : {}".format(a,c))
c = 2
print ("a: {} b: {} c : {}".format(a,b,c))
c %= a
print ("a: {} c %= a: {}".format(a,c))
c **= a
print ("a: {} c **= a: {}".format(a,c))
c //= a
print ("a: {} c //= a: {}".format(a,c))
Avviando il codice sopra avremo il seguente risultato:
a: 21 b: 10 c : 0
a: 21 c = a + b: 31
a: 21 c += a: 52
a: 21 c *= a: 1092
a: 21 c /= a : 52.0
a: 21 b: 10 c : 2
a: 21 c %= a: 2
a: 21 c **= a: 2097152
a: 21 c //= a: 99864
Operatori bit a biT
L’operatore bit a bit funziona sui bit ed esegue l’operazione bit per bit. Questi operatori vengono utilizzati per confrontare numeri binari.
Esistono i seguenti operatori bit a bit supportati dal linguaggio Python

Esempio di operatori bit a bit
a = 20
b = 10
print ('a=',a,':',bin(a),'b=',b,':',bin(b))
c = 0
c = a & b;
print ("result of AND is ", c,':',bin(c))
c = a | b;
print ("result of OR is ", c,':',bin(c))
c = a ^ b;
print ("result of EXOR is ", c,':',bin(c))
c = ~a;
print ("result of COMPLEMENT is ", c,':',bin(c))
c = a << 2;
print ("result of LEFT SHIFT is ", c,':',bin(c))
c = a >> 2;
print ("result of RIGHT SHIFT is ", c,':',bin(c))
Avviando il codice sopra avremo il seguente risultato:
a= 20 : 0b10100 b= 10 : 0b1010
result of AND is 0 : 0b0
result of OR is 30 : 0b11110
result of EXOR is 30 : 0b11110
result of COMPLEMENT is -21 : -0b10101
result of LEFT SHIFT is 80 : 0b1010000
result of RIGHT SHIFT is 5 : 0b101
Operatori logici
Gli operatori logici Python vengono utilizzati per combinare due o più condizioni e verificare il risultato finale. Esistono i seguenti operatori logici supportati dal linguaggio Python. Supponiamo che la variabile a contenga 10 e che la variabile b contenga 20

Esempio di operatori logici
var = 5
print(var > 3 and var < 10)
print(var > 3 or var < 4)
print(not (var > 3 and var < 10))
Avviando il codice sopra avremo il seguente risultato:
True
True
False
Operatori di appartenenza
Gli operatori di appartenenza di Python verificano l’appartenenza a una sequenza, come stringhe, elenchi o tuple. Ci sono due operatori di abbonamento come spiegato di seguito

Esempio di operatori di appartenenza
a = 10
b = 20
list = [1, 2, 3, 4, 5 ]
print ("a:", a, "b:", b, "list:", list)
if ( a in list ):
print ("a is present in the given list")
else:
print ("a is not present in the given list")
if ( b not in list ):
print ("b is not present in the given list")
else:
print ("b is present in the given list")
c=b/a
print ("c:", c, "list:", list)
if ( c in list ):
print ("c is available in the given list")
else:
print ("c is not available in the given list")
Avviando il codice sopra avremo il seguente risultato:
a: 10 b: 20 list: [1, 2, 3, 4, 5]
a is not present in the given list
b is not present in the given list
c: 2.0 list: [1, 2, 3, 4, 5]
c is available in the given list
Operatori di identità
Gli operatori di identità confrontano le posizioni di memoria di due oggetti. Ci sono due operatori Identità spiegati di seguito

Esempio di operatori di identità
a = [1, 2, 3, 4, 5]
b = [1, 2, 3, 4, 5]
c = a
print(a is c)
print(a is b)
print(a is not c)
print(a is not b)
Avviando il codice sopra avremo il seguente risultato:
True
False
False
True
Letture Correlate
Ercole Palmeri