Python 3 - Operatori di base
Gli operatori sono i costrutti che possono manipolare il valore degli operandi. Considera l'espressione 4 + 5 = 9. Qui, 4 e 5 sono chiamati operandi e + è chiamato operatore.
Tipi di operatore
Il linguaggio Python supporta i seguenti tipi di operatori:
- Operatori aritmetici
- Operatori di confronto (relazionali)
- Operatori di assegnazione
- Operatori logici
- Operatori bit per bit
- Operatori di appartenenza
- Operatori di identità
Diamo uno sguardo a tutti gli operatori uno per uno.
Operatori aritmetici Python
Assumi variabile a contiene il valore 10 e variabile b detiene il valore 21, quindi -
Operatore | Descrizione | Esempio |
---|---|---|
+ Addizione | Aggiunge valori su entrambi i lati dell'operatore. | a + b = 31 |
- Sottrazione | Sottrae l'operando di destra dall'operando di sinistra. | a - b = -11 |
* Moltiplicazione | Moltiplica i valori su entrambi i lati dell'operatore | a * b = 210 |
/ Divisione | Divide l'operando sinistro per l'operando destro | b / a = 2,1 |
Modulo% | Divide l'operando di sinistra per l'operando di destra e restituisce il resto | b% a = 1 |
** Esponente | Esegue il calcolo esponenziale (potenza) sugli operatori | a ** b = 10 alla potenza 20 |
// | Floor Division - La divisione degli operandi in cui il risultato è il quoziente in cui vengono rimosse le cifre dopo il punto decimale. Ma se uno degli operandi è negativo, il risultato è floor, cioè arrotondato da zero (verso l'infinito negativo): | 9 // 2 = 4 e 9,0 // 2,0 = 4,0, -11 // 3 = -4, -11,0 // 3 = -4,0 |
Operatori di confronto Python
Questi operatori confrontano i valori su entrambi i lati e decidono la relazione tra loro. Sono anche chiamati operatori relazionali.
Assumi variabile a contiene il valore 10 e variabile b detiene il valore 20, quindi -
Operatore | Descrizione | Esempio |
---|---|---|
== | Se i valori di due operandi sono uguali, la condizione diventa vera. | (a == b) non è vero. |
! = | Se i valori di due operandi non sono uguali, la condizione diventa vera. | (a! = b) è vero. |
> | Se il valore dell'operando sinistro è maggiore del valore dell'operando destro, la condizione diventa vera. | (a> b) non è vero. |
< | Se il valore dell'operando sinistro è inferiore al valore dell'operando destro, la condizione diventa vera. | (a <b) è vero. |
> = | Se il valore dell'operando sinistro è maggiore o uguale al valore dell'operando destro, la condizione diventa vera. | (a> = b) non è vero. |
<= | Se il valore dell'operando sinistro è minore o uguale al valore dell'operando destro, la condizione diventa vera. | (a <= b) è vero. |
Operatori di assegnazione Python
Assumi variabile a contiene il valore 10 e variabile b detiene il valore 20, quindi -
Operatore | Descrizione | Esempio |
---|---|---|
= | Assegna i valori dagli operandi del lato destro all'operando del lato sinistro | c = a + b assegna il valore di a + b a c |
+ = Aggiungi AND | Aggiunge l'operando destro all'operando sinistro e assegna il risultato all'operando sinistro | c + = a è equivalente a c = c + a |
- = Sottrai AND | Sottrae l'operando destro dall'operando sinistro e assegna il risultato all'operando sinistro | c - = a è equivalente a c = c - a |
* = Moltiplica AND | Moltiplica l'operando destro con l'operando sinistro e assegna il risultato all'operando sinistro | c * = a è equivalente a c = c * a |
/ = Dividi AND | Divide l'operando sinistro con l'operando destro e assegna il risultato all'operando sinistro | c / = a è equivalente a c = c / ac / = a è equivalente a c = c / a |
% = Modulo AND | Richiede il modulo utilizzando due operandi e assegna il risultato all'operando sinistro | c% = a è equivalente a c = c% a |
** = Esponente AND | Esegue il calcolo esponenziale (potenza) sugli operatori e assegna un valore all'operando sinistro | c ** = a è equivalente a c = c ** a |
// = Divisione pavimento | Esegue la divisione del piano sugli operatori e assegna un valore all'operando sinistro | c // = a è equivalente a c = c // a |
Operatori bit per bit Python
L'operatore bit per bit lavora sui bit ed esegue operazioni bit per bit. Assumiamo se a = 60; e b = 13; Ora in formato binario saranno i seguenti:
a = 0011 1100
b = 0000 1101
-----------------
a & b = 0000 1100
a | b = 0011 1101
a ^ b = 0011 0001
~ a = 1100 0011
La funzione incorporata di Python bin () può essere utilizzata per ottenere la rappresentazione binaria di un numero intero.
I seguenti operatori bit per bit sono supportati dal linguaggio Python:
Operatore | Descrizione | Esempio |
---|---|---|
& Binario AND | L'operatore copia un po ', nel risultato, se esiste in entrambi gli operandi | (a & b) (significa 0000 1100) |
| OR binario | Copia un po ', se esiste in uno degli operandi. | (a | b) = 61 (significa 0011 1101) |
^ XOR binario | Copia il bit, se è impostato in un operando ma non in entrambi. | (a ^ b) = 49 (significa 0011 0001) |
~ Complemento binari | È unario e ha l'effetto di "capovolgere" i bit. | (~ a) = -61 (significa 1100 0011 in forma di complemento a 2 a causa di un numero binario con segno. |
<< Binario Maiusc sinistro | Il valore dell'operando sinistro viene spostato a sinistra del numero di bit specificato dall'operando destro. | a << 2 = 240 (significa 1111 0000) |
>> Binary Right Shift | Il valore dell'operando sinistro viene spostato a destra del numero di bit specificato dall'operando destro. | a >> 2 = 15 (significa 0000 1111) |
Operatori logici Python
I seguenti operatori logici sono supportati dal linguaggio Python. Assumi variabilea è vero e variabile b vale False allora -
Operatore | Descrizione | Esempio |
---|---|---|
e AND logico | Se entrambi gli operandi sono veri, la condizione diventa vera. | (aeb) è False. |
o OR logico | Se uno dei due operandi è diverso da zero, la condizione diventa vera. | (a o b) è vero. |
non logico NOT | Utilizzato per invertire lo stato logico del suo operando. | Non (aeb) è vero. |
Operatori di appartenenza a Python
Gli operatori di appartenenza di Python verificano l'appartenenza a una sequenza, come stringhe, elenchi o tuple. Ci sono due operatori di appartenenza come spiegato di seguito:
Operatore | Descrizione | Esempio |
---|---|---|
in | Restituisce true se trova una variabile nella sequenza specificata e false in caso contrario. | x in y, qui in restituisce un 1 se x è un membro della sequenza y. |
Non in | Restituisce true se non trova una variabile nella sequenza specificata e false in caso contrario. | x non in y, qui non in restituisce un 1 se x non è un membro della sequenza y. |
Operatori di identità Python
Gli operatori di identità confrontano le posizioni di memoria di due oggetti. Esistono due operatori di identità come spiegato di seguito:
Operatore | Descrizione | Esempio |
---|---|---|
è | Restituisce true se le variabili su entrambi i lati dell'operatore puntano allo stesso oggetto e false in caso contrario. | x è y, qui is restituisce 1 se id (x) è uguale a id (y). |
non è | Restituisce false se le variabili su entrambi i lati dell'operatore puntano allo stesso oggetto e true in caso contrario. | x non è y, qui is not restituisce 1 se id (x) non è uguale a id (y). |
Precedenza degli operatori Python
La tabella seguente elenca tutti gli operatori dalla precedenza più alta a quella più bassa.
Sr.No. | Operatore e descrizione |
---|---|
1 | ** Esponenziazione (aumento alla potenza) |
2 | ~ + - Complemento, più e meno unario (i nomi dei metodi per gli ultimi due sono + @ e - @) |
3 | * / % // Moltiplica, dividi, modulo e divisione dei piani |
4 | + - Addizione e sottrazione |
5 | >> << Spostamento bit per bit destro e sinistro |
6 | & Bitwise "AND" |
7 | ^ | "OR" esclusivo bit per bit e "OR" regolare |
8 | <= < > >= Operatori di confronto |
9 | <> == != Operatori di uguaglianza |
10 | = %= /= //= -= += *= **= Operatori di assegnazione |
11 | is is not Operatori di identità |
12 | in not in Operatori di appartenenza |
13 | not or and Operatori logici |