Introdução
Você pode comparar strings em Python usando os operadores de igualdade (==
) e comparação (<
, >
, !=
, <=
, >=
). Não existem métodos especiais para comparar duas strings. Neste artigo, você aprenderá como cada um dos operadores funciona ao comparar strings.
A comparação de strings em Python compara os caracteres em ambas as strings um por um. Quando caracteres diferentes são encontrados, então seus valores de ponto de código Unicode são comparados. O caractere com o valor Unicode mais baixo é considerado menor.
Operadores de Igualdade e Comparação em Python
Declare a variável de string:
fruit1 = 'Apple'
A tabela a seguir mostra os resultados da comparação de strings idênticas (Apple
para Apple
) usando diferentes operadores.
Operator | Code | Output |
---|---|---|
Equality | print(fruit1 == 'Apple') |
True |
Not equal to | print(fruit1 != 'Apple') |
False |
Less than | print(fruit1 < 'Apple') |
False |
Greater than | print(fruit1 > 'Apple') |
False |
Less than or equal to | print(fruit1 <= 'Apple') |
True |
Greater than or equal to | print(fruit1 >= 'Apple') |
True |
Ambas as strings são exatamente iguais. Em outras palavras, elas são iguais. O operador de igualdade e os outros operadores igual a retornam True
.
Se você comparar strings de valores diferentes, então você obterá a saída exatamente oposta.
Se você comparar strings que contenham o mesmo subcadeia, como Apple
e ApplePie
, então a string mais longa é considerada maior.
Comparando a Entrada do Usuário para Avaliar a Igualdade Usando Operadores
Este exemplo de código obtém e compara a entrada do usuário. Em seguida, o programa usa os resultados da comparação para imprimir informações adicionais sobre a ordem alfabética das strings de entrada. Neste caso, o programa assume que a string menor vem antes da string maior.
fruit1 = input('Enter the name of the first fruit:\n')
fruit2 = input('Enter the name of the second fruit:\n')
if fruit1 < fruit2:
print(fruit1 + " comes before " + fruit2 + " in the dictionary.")
elif fruit1 > fruit2:
print(fruit1 + " comes after " + fruit2 + " in the dictionary.")
else:
print(fruit1 + " and " + fruit2 + " are the same.")
Aqui está um exemplo da saída potencial quando você insere valores diferentes:
OutputEnter the name of first fruit:
Apple
Enter the name of second fruit:
Banana
Apple comes before Banana in the dictionary.
Aqui está um exemplo da saída potencial quando você insere strings idênticas:
OutputEnter the name of first fruit:
Orange
Enter the name of second fruit:
Orange
Orange and Orange are the same.
Nota: Para que este exemplo funcione, o usuário precisa inserir apenas letras maiúsculas ou apenas letras minúsculas para a primeira letra de ambas as strings de entrada. Por exemplo, se o usuário inserir as strings apple
e Banana
, então a saída será apple vem após Banana no dicionário
, o que está incorreto.
Essa discrepância ocorre porque os valores dos pontos de código Unicode das letras maiúsculas são sempre menores do que os valores dos pontos de código Unicode das letras minúsculas: o valor de a
é 97 e o valor de B
é 66. Você pode testar isso por si mesmo usando a função ord()
para imprimir o valor do ponto de código Unicode dos caracteres.
Conclusão
Neste artigo, você aprendeu como comparar strings em Python usando os operadores de igualdade (==
) e comparação (<
, >
, !=
, <=
, >=
). Continue aprendendo sobre strings em Python.
Source:
https://www.digitalocean.com/community/tutorials/python-string-comparison