Tutorial del Python - Operatori

Jinku Hu 30 marzo 2021
  1. Operatori di aritmetica Python
  2. Operatori di confronto del Python
  3. Operatori Logici Python
  4. Operatori Bitwise Python
  5. Operatori di assegnazione del Python
  6. Python Operatori speciali
Tutorial del Python - Operatori

In questa sezione, gli operatori Python saranno discussi con l’aiuto di codici di esempio.

Gli operatori sono i simboli speciali per eseguire compiti specifici sugli operandi (valori o variabili) per esempio quando si scrive a+b, qui + è un operatore che opera sulle variabili a e b e queste variabili sono chiamate operandi.

Di seguito sono riportati alcuni dei tipi di operatori Python:

Operatori di aritmetica Python

Gli operatori aritmetici eseguono operazioni aritmetiche (matematiche) su variabili quali addizione, sottrazione, moltiplicazione, ecc.

Si consideri la seguente tabella in cui gli operatori aritmetici Python sono descritti insieme ad esempi:

Operatore Descrizione Esempio
+ usato per aggiungere valori. Si può anche usare come operatore unary + operatore a + b, +a
- usato per sottrarre un valore da un altro. Può anche essere usato come unary - operatore a - b, -a
* utilizzato per moltiplicare due numeri a * b
/ usato per dividere un valore per un altro. la divisione restituirà sempre il tipo di dati float. a / b
% usato per restituire il resto della divisione su due operandi. a % b
// Si chiama divisione di piano che restituisce un numero intero a // b
** E’ esponente che significa operando a sinistra innalza al potere dell’operando a destra a ** b

Esempio di Operatori Aritmetici Python

Nel codice seguente, gli operatori aritmetici sono utilizzati su due operandi:

a = 24
b = 7
print("a + b =", a + b)
print("a - b =", a - b)
print("a * b =", a * b)
print("a / b =", a / b)
print("a // b =", a // b)
print("a ** b =", a ** b)
a + b = 31
a - b = 17
a * b = 168
a / b = 3.4285714285714284
a // b = 3
a ** b = 4586471424

Si può vedere qui, la divisione restituisce un valore a virgola mobile, ma la divisione di piano restituisce un numero intero.

Operatori di confronto del Python

Gli operatori di confronto confrontano due o più valori. Il risultato ottenuto dopo l’applicazione degli operatori di confronto è o True o False in base alla condizione.

I seguenti sono gli operatori di confronto nella programmazione Python:

Operatore Descrizione Esempio
> Maggiore dell’operatore che ritorna vero quando il valore dell’operando sinistro è maggiore del valore dell’operando destro. a > b
< Meno dell’operatore che ritorna vero quando il valore dell’operando di sinistra è inferiore al valore dell’operando di destra. a < b
== Uguale ai ritorni dell’operatore vero quando i valori di entrambi gli operandi sono uguali a == b
!= Non uguale all’operatore ritorna vero quando i valori degli operandi non sono uguali a != b
>= Maggiore di uguale all’operatore che ritorna vero quando il valore dell’operando di sinistra è maggiore o uguale al valore dell’operando di destra. a >= b
<= Meno di o uguale all’operatore che ritorna vero quando il valore dell’operando di sinistra è inferiore o uguale al valore dell’operando di destra. a <= b

Esempio di operatori di confronto del Python

Si consideri il codice sottostante in cui vengono utilizzati gli operatori di confronto:

a = 12
b = 24
print("a > b =", a > b)
print("a < b =", a < b)
print("a == b =", a == b)
print("a != b =", a != b)
print("a >= b =", a >= b)
print("a <= b =", a <= b)
a > b = False
a < b = True
a == b = False
a != b = True
a >= b = False
a <= b = True

Operatori Logici Python

Gli operatori logici in Python includono and, or e not.

Operatore Descrizione Esempio
and risulta vero solo quando entrambi gli operandi (o condizioni) sono veri a and b
or risulta vero quando uno qualsiasi degli operandi è vero a or b
not prende complemento dell’operando (da vero a falso, da falso a vero) not a

Esempio di Operatori Logici Python

Si consideri il seguente esempio in cui vengono utilizzati operatori logici:

a = False
b = True
print("a and b =", a and b)
print("a or b =", a or b)
print("not b =", not b)
a and b = False
a or b = True
not b = False

Operatori Bitwise Python

Gli operatori bitwise eseguono operazioni bit per bit. Gli operandi sono considerati come cifre binarie sulle quali vengono eseguite le operazioni bitwise.

Si consideri un esempio in cui abbiamo a = 4 (100 in binario) e b = 5 (101 in binario):

Operatore Descrizione Esempio
& Bitwise AND operatore che risulta in 1 quando i bit di entrambi gli operandi sono 1 a &b = 4
| Bitwise OR operatore che risulta 1 se uno dei bit degli operandi è 1. a | b = 5
~ Negazione, prende il complemento di due. ~a = -5
^ L’operatore XOR Bitwise XOR risulta 1 quando i bit degli operandi sono diversi. a^b= 1
>> Lo spostamento a destra bitwise right shifting sposterà i bit sul lato destro per un numero di volte specificato. a >>2= 1
<< Lo spostamento a sinistra dei bit sposterà i bit sul lato sinistro per un numero di volte specificato. a << 2 =16

Operatori di assegnazione del Python

L’operatore di assegnazione = assegna i valori alle variabili. L’operatore di assegnazione inizializza una variabile per esempio x = 1 è un’istruzione di assegnazione che assegna 1 a x.

In Python, ci sono operatori di assegnazione composti che sono la combinazione di operatori aritmetici e l’operatore di assegnazione e talvolta una combinazione di operatori bitwise e operatori di assegnazione.

Per esempio, x += 2 è un’istruzione di assegnazione composta in cui 2 è aggiunto al valore effettivo della variabile x e il risultato è memorizzato nella variabile x.

La seguente tabella mostra le dichiarazioni di assegnazione composte:

Operatore Esempio Equivalente a
= a = 8 a = 8
+= a += 8 a = a + 8.
-= a -= 8 a = a - 8
*= a *= 8 a = a * 8
/= a /= 8 a = a / 8
%= a %= 8 a = a % 8.
/= a /= 8 a = a / 8
*= a *= 8 a = a * 8
&= a &= 8 a = a & 8
` =` `a
^= a ^= 8 a = a ^ 8
>>= a >>= 8 a = a >> 8.
<<= a <<= 8 a = a << 8

Python Operatori speciali

Nella programmazione Python, ci sono alcuni operatori che hanno un significato speciale e sono chiamati operatori speciali per esempio operatore di appartenenza, operatori di identità, ecc.

Operatori di identità Python

In Python gli operatori “è” e “non è” sono chiamati operatori di identità. Gli operatori di identità sono usati per determinare se due variabili si trovano nella stessa parte della memoria. Quindi due variabili per essere uguali e due variabili per essere identiche sono due affermazioni diverse.

Operatore Descrizione
is restituisce true quando le variabili sono identiche (variabili che si riferiscono agli stessi oggetti)
is not restituisce true quando le variabili non sono identiche (variabili non riferite agli stessi oggetti)

Esempio di operatore di identità del Python

Considerate il codice qui sotto:

a = 3
b = 3
print(a is b)
print(a is not b)
True
False

In questo esempio, le variabili a e b hanno gli stessi valori e si può vedere che sono anche identiche.

Operatori di Python Membership

In Python gli operatori in e “non in” sono chiamati operatori membri. Gli operatori di appartenenza sono usati per determinare se le variabili si trovano in una sequenza (lista, tupla, stringa e dizionario) o no.

Si può fare l’operazione di membership del dizionario per la “chiave” nel dizionario ma non per il “valore”.

Operatore Descrizione
in restituisce true quando il valore è presente nella sequenza
not in restituisce true quando il valore non è presente nella sequenza

Esempio di operatori di Python Membership

Considerate il codice qui sotto:

a = "Python Programming"
print("y" in a)
print("b" not in a)
print("b" in a)
True
True
False

In questo codice, y è presente nella sequenza (stringa), quindi viene restituito True. Allo stesso modo, b non è presente in a quindi di nuovo True viene restituito come not in. Il False viene restituito come b non è presente in a e viene usato in.

Autore: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook