Confronto di stringhe in Python

Per confrontare due o più valori stringa in Python, usi gli operatori di confronto. Python non ha funzioni integrate per il confronto delle stringhe. Quando si confrontano i valori, Python restituisce sempre "true" o "false" per indicare il risultato. Il formato utilizzato è "valore1 operatore valore2". Quando si effettuano confronti, è possibile utilizzare stringhe tra virgolette o utilizzare variabili con valori stringa.

Operatori di confronto

Python ha diversi operatori di confronto che puoi usare per confrontare due o più valori stringa. È possibile utilizzare operatori di confronto in cicli o istruzioni condizionali. Usa "==" per verificare se due stringhe sono uguali o "!=" per vedere se non lo sono. Puoi anche usare ">" per verificare se la prima stringa è maggiore della seconda o "=" per vedere se è maggiore o uguale a, o "<=" per controllare se è minore o uguale al secondo.

Video del giorno

Confronti concatenati

Python ti consente di concatenare più di un confronto nella stessa riga. Ad esempio, confrontare 'a' > 'b' > 'c' equivale a confrontare 'a' > 'b' e poi 'b' > 'c' subito dopo. Python restituisce "vero" se tutti i confronti nella catena restituiscono vero e "falso" se uno non restituisce vero. Quando un confronto restituisce false, Python non confronta il resto della catena.

Comportamento

Python confronta tutte le stringhe stringhe lessicograficamente, il che significa che "mela" è sempre minore di "banana", che è minore di "ciliegia" e così via. Tuttavia, i confronti di stringhe fanno distinzione tra maiuscole e minuscole. Tutte le lettere maiuscole sono inferiori alle lettere minuscole. Ad esempio, Python determina che "Zebra" è minore di "mela". Per evitare questa confusione durante il confronto stringhe lessicograficamente, converte temporaneamente tutte le stringhe in maiuscolo o minuscolo e quindi confronta loro.

Tipi di dati

Quando gli oggetti hanno un tipo diverso, Python tenta di convertirli nello stesso tempo a scopo di confronto. Ad esempio, confrontando un float con il valore 10.0 con un intero con il valore 10 restituisce "true" perché sono uguali. Tuttavia, un intero con il valore 10 non è lo stesso di una stringa con il valore "10" tra virgolette contrassegna e restituisce "falso". Se Python non può convertire i valori in un tipo comune, restituisce sempre "falso".