Come utilizzare Python Operatori non uguali e uguali
Pubblicato: 2022-01-29In Python, puoi usare gli operatori non uguale a e uguale a per verificare se due oggetti Python hanno lo stesso valore. Questo tutorial ti insegnerà come utilizzare questi operatori con molto codice di esempio.
In questo tutorial imparerai:
- la sintassi dell'operatore non uguale (
!=
) e i casi d'uso, - la sintassi dell'operatore uguale (
==
) con esempi, e - l'uso di
is
eis not
operatori per verificare l'identità di due oggetti Python qualsiasi.
Iniziamo.
Sintassi dell'operatore Python non uguale
Per due oggetti Python qualsiasi obj1
e obj2
, la sintassi generale per utilizzare l'operatore non uguale è:
<obj1> != <obj2>
- restituisce
True
quando i valori diobj1
eobj2
non sono uguali e - restituisce
False
altrimenti.
Nota : come accennato in precedenza,
obj1
eobj2
possono essere numeri interi, numeri in virgola mobile, stringhe, elenchi e così via.
Esempi di codice operatore Python non uguale
In questa sezione, codifichiamo alcuni esempi per comprendere meglio l'operatore non uguale .
Utilizzo dell'operatore Python Not Equal per il confronto
Ecco il nostro primo esempio.
num1 = 27 num2 = 3*9 num1 != num2 # Output: False
Puoi eseguire gli esempi di codice sull'IDE Python di Geekflare, direttamente dal tuo browser. Oppure potresti scegliere di eseguire sul tuo computer locale.
Poiché num1 = 27
e anche num2
27
( 3*9 = 27
), i valori di num1
e num2
sono uguali. Quindi l'operatore !=
restituisce False
.
Facciamo un altro esempio.
Nel codice seguente, num1
è impostato su 7. E num2
è impostato sulla stringa 7. Poiché sono di tipi di dati diversi, l'operatore non uguale restituisce True
.
num1 = 7 num2 = "7" num1 != num2 # Output: True
Trasmetti la stringa a un numero intero, come mostrato:
num1 = 7 num2 = int("7") num1 != num2 # Output: False
In questo caso, puoi vedere che il risultato restituito è False
, poiché num1
e num2
ora sono uguali all'intero 7.
Puoi anche usare l'operatore non uguale con raccolte Python come liste, tuple e insiemi.
Nota : per raccolte di dati come elenchi, l'operatore non uguale funziona controllando i valori dei singoli elementi. Ad esempio, due liste
list1
elist2
—ognuna di lunghezzan
—sono uguali solo selist1[i] == list2[i]
fori
in{0,1,2,3,..n-1}
.
Ecco un esempio:
list1 = [2,4,6,8] list2 = [2,4,6,9] list1 != list2 # Output: True
Nell'esempio precedente, list1
e list2
differiscono solo per un elemento. E l'operatore non uguale !=
restituisce True
come previsto.
Utilizzo dell'operatore non uguale a Python nei condizionali
Utilizzerai spesso l'operatore non uguale a come parte dei condizionali Python.
Ad esempio, il frammento di codice di seguito mostra come puoi verificare se un numero è dispari o meno.
Un numero che non è equamente divisibile per 2 è dispari . E questo si riduce alla condizione
num%2 != 0
.
num = 7 if(num%2 != 0): print("The number is odd.") else: print("The number is even.") # Output: The number is odd.
Puoi anche utilizzare i condizionali nelle comprensioni degli elenchi quando desideri conservare solo gli elementi dell'elenco che soddisfano una condizione specifica. Nell'esempio seguente, odd_10
è l'elenco di tutti i numeri dispari inferiori a 10.
odd = [num for num in range(10) if num%2 != 0] print(odd) # Output: [1, 3, 5, 7, 9]
E questo completa la nostra discussione sull'operatore non uguale ( !=
).
Come avrete ormai intuito l'operatore uguale a produce l'effetto opposto dell'operatore diverso da .
Imparerai di più a riguardo nella prossima sezione.
Sintassi dell'operatore uguale di Python
Ecco la sintassi per usare l'operatore uguale a Python:
<obj1> == <obj2> #where <obj1> and <obj2> are valid Python objects
- restituisce
True
quando i valori diobj1
eobj2
sono uguali, e - restituisce
False
altrimenti.
Esempi di codice operatore Python uguale
L'operatore uguale ( ==
) può essere utilizzato in modo molto simile all'operatore non uguale .
Codifichiamo i seguenti esempi:
- per verificare se due stringhe sono uguali,
- per verificare se un numero è pari, e
- utilizzare i condizionali nella comprensione degli elenchi
Utilizzo dell'operatore Python Not Equal per il confronto
Nel frammento di codice seguente, str1
e str2
sono uguali in termini di valore. Quindi l'operatore uguale ( ==
) restituisce True
.

str1 = "coding" str2 = "coding" str1 == str2 # Output: True

Usiamo ora l'operatore uguale in un'espressione condizionale.
Nota : un numero divisibile per 2 è pari . E nel codice, questo si riduce alla condizione
num%2 == 0
num = 10 if(num%2 == 0): print("The number is even.") else: print("The number is odd.") # Output: The number is even.
Costruiamo ora su questo esempio, usa la comprensione dell'elenco di Python per ottenere tutti i numeri pari inferiori a 10.
even_10 = [num for num in range(10) if num%2 == 0] print(even_10) # Output: [0, 2, 4, 6, 8]
Nell'esempio sopra,
-
range(10)
restituisce un oggetto range che può essere eseguito in loop per ottenere tutti i numeri interi da 0 a 9. - La condizione
num%2 == 0
èTrue
solo per i numeri pari. - Quindi
even_10
è l'elenco di tutti i numeri pari inferiori a 10.
Finora hai imparato a verificare l' uguaglianza usando gli operatori non uguali ( !=
) e uguali ( ==
).
Nella prossima sezione imparerai come verificare l' identità di due oggetti. Verificherai se due oggetti Python sono identici .
Come usare Python è e non è Operatori
Se sei un principiante nella programmazione Python, è possibile che tu sia confuso tra gli operatori ==
e is
. Chiariamolo in questa sezione.
Nella sezione precedente, abbiamo avuto un esempio in cui str1
e str2
dove equal e l'operatore ==
hanno restituito True
.
Ora esegui il seguente frammento di codice.
str1 = "coding" str2 = "coding" str1 is str2 # Output: False
Puoi vedere che str1 is str2
restituisce False
.
Facciamo un passo indietro e capiamo cosa is
l'operatore di Python.
L'operatore
is
opera su due oggetti Python qualsiasi.
E restituisceTrue
solo se i due oggetti sono identici , ovvero si riferiscono allo stesso oggetto in memoria.
Anche se str1
è uguale a str2
, str1
non è str2
poiché puntano a due diversi oggetti in memoria. E quindi hanno identità diverse.

In Python, puoi usare la funzione id()
per ottenere l'identità dell'oggetto.
Esegui la seguente cella di codice per ottenere le identità di str1
e str2
.
id(str1) # Sample output: 139935398870320 id(str2) # Sample output: 139935398871344
Come puoi vedere, str1
e str2
hanno identità diverse. E str1 is str2
restituisce False
come previsto.
Mettendolo insieme,
<obj1> is <obj2> # returns True if and only if id(<obj1>) == id(<obj2>) # returns True
Verifichiamo rapidamente questo, come mostrato:
str1 = "coding" str2 = str1 print(str1 is str2) print(id(str1) == id(str2)) # Output True True
Intuitivamente, l'operatore is not
fa l'opposto dell'operatore is
.
L'operatore
is not
opera su due oggetti Python qualsiasi.
E restituisceFalse
solo se i due oggetti sono identici , ovvero si riferiscono allo stesso oggetto in memoria. In caso contrario, restituisceTrue
.
Negli esempi di codice precedenti, prova a sostituire is
with is not
e controlla i risultati.
Conclusione
Spero che questo tutorial ti sia stato utile.
Per riassumere, hai imparato:
- come utilizzare gli operatori uguale (
==
) e non uguale (!=
) per verificare se due oggetti Python hanno lo stesso valore, - la differenza tra uguaglianza e identità degli oggetti Python, e
- come Python
is
eis not
operatori aiutano a verificare se due oggetti Python sono identici.
Scopri come calcolare la differenza di fuso orario o creare un gioco di serpenti in Python qui.
Ci vediamo tutti al prossimo tutorial. Fino ad allora, buon apprendimento e programmazione!