Confrontare stringhe in Python
- Usa gli operatori relazionali per confrontare le stringhe in Python
-
Usa l’operatore
is
per confrontare le stringhe in Python - Usa la logica definita dall’utente per confrontare le stringhe in Python
- Usa le espressioni regolari per confrontare le stringhe in Python
Questo tutorial introdurrà come confrontare le stringhe in Python.
Usa gli operatori relazionali per confrontare le stringhe in Python
In Python, gli operatori relazionali vengono utilizzati per confrontare valori diversi. Le stringhe possono essere confrontate utilizzando questi operatori. Quando confrontiamo le stringhe, confrontiamo i loro valori Unicode.
Nel codice seguente, confronteremo due stringhe utilizzando gli operatori relazionali e stamperemo i loro risultati.
str1 = "Mark"
str2 = "Jack"
print(str1 > str2)
print(str1 < str2)
print(str1 == str2)
print(str1 != str2)
print(str1 >= str2)
print(str1 <= str2)
Produzione:
True
False
False
True
True
False
I confronti tra stringhe in Python fanno distinzione tra maiuscole e minuscole. Nel caso in cui vogliamo fare i confronti tra stringhe senza distinzione tra maiuscole e minuscole, possiamo usare la funzione islower()
, che converte tutti i caratteri nella stringa in minuscolo, e poi procediamo a confrontarli.
Usa l’operatore is
per confrontare le stringhe in Python
L’operatore is
viene utilizzato per verificare il confronto dell’identità in Python. Ciò significa che se due variabili hanno la stessa posizione di memoria, la loro identità è considerata la stessa e il risultato del confronto è True
; in caso contrario, è False
. L’operatore is
è diverso dall’operatore relazionale ==
poiché quest’ultimo verifica l’uguaglianza. Per esempio,
str1 = "Mark"
str2 = str1
str3 = "MARK"
print(str1 is str2)
print(str1 is str3)
Produzione:
True
False
Usa la logica definita dall’utente per confrontare le stringhe in Python
Oltre a questi operatori incorporati, possiamo creare le nostre funzioni definite dall’utente per confrontare le stringhe su altri fattori come la loro lunghezza e altro ancora.
Nel codice seguente implementiamo una funzione definita dall’utente per confrontare la lunghezza di due stringhe.
def check_len(s1, s2):
a = len(s1)
b = len(s2)
if a > b:
print(s1, " is Longer")
elif a == b:
print("Equal Length")
else:
print(s2, " is Longer")
str1 = "Mark"
str2 = "Jack"
check_len(str1, str2)
Produzione:
Equal Length
Usa le espressioni regolari per confrontare le stringhe in Python
Le espressioni regolari sono molto utilizzate in Python e possono essere utilizzate per verificare se una stringa corrisponde o meno a un modello.
Nell’esempio seguente, confronteremo due stringhe con un modello utilizzando espressioni regolari.
import re
str1 = "Mark"
str2 = "Jack"
def check_pattern(s):
if re.match("Ma[a-z]+", s):
print("Pass")
else:
print("Fail")
check_pattern(str1)
check_pattern(str2)
Produzione:
True
False
Il modello re
nel precedente controlla se una stringa inizia con Ma
ed è seguita da altre lettere. Ecco perché Mark
restituisce True e ack
restituisce False.
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArticolo correlato - Python String
- Come controllare una stringa è vuota in modo pitonico
- Converti una stringa in nome variabile in Python
- Come rimuovere gli spazi bianchi in una stringa in Python
- Estrai numeri da una stringa in Python
- Come convertire una stringa in datario in Python
- Come convertire una stringa in minuscola in Python 2 e 3