Comparar Strings em Python
- Use os operadores relacionais para comparar strings em Python
-
Use o operador
is
para comparar strings em Python - Use a lógica definida pelo usuário para comparar strings em Python
- Use as expressões regulares para comparar strings em Python
Este tutorial irá apresentar como comparar strings em Python.
Use os operadores relacionais para comparar strings em Python
Em Python, os operadores relacionais são usados para comparar diferentes valores. As strings podem ser comparadas usando esses operadores. Quando comparamos strings, comparamos seus valores Unicode.
No código a seguir, compararemos duas strings usando os operadores relacionais e imprimiremos seus resultados.
str1 = "Mark"
str2 = "Jack"
print(str1 > str2)
print(str1 < str2)
print(str1 == str2)
print(str1 != str2)
print(str1 >= str2)
print(str1 <= str2)
Resultado:
True
False
False
True
True
False
As comparações de strings em Python diferenciam maiúsculas de minúsculas. No caso de desejarmos fazer as comparações de strings sem fazer distinção entre maiúsculas e minúsculas, podemos usar a função islower()
, que converte todos os caracteres na string para minúsculas e, em seguida, proceder à comparação.
Use o operador is
para comparar strings em Python
O operador is
é usado para verificar a comparação de identidade no Python. Isso significa que se duas variáveis têm o mesmo local de memória, então sua identidade é considerada a mesma e o resultado de sua comparação é True
; caso contrário, é False
. O operador is
é diferente do operador relacional ==
, pois o último testa a igualdade. Por exemplo,
str1 = "Mark"
str2 = str1
str3 = "MARK"
print(str1 is str2)
print(str1 is str3)
Resultado:
True
False
Use a lógica definida pelo usuário para comparar strings em Python
Além desses operadores integrados, podemos criar nossas funções definidas pelo usuário para comparar strings em outros fatores, como comprimento e muito mais.
No código a seguir, implementamos uma função definida pelo usuário para comparar o comprimento de duas strings.
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)
Resultado:
Equal Length
Use as expressões regulares para comparar strings em Python
Expressões regulares são muito usadas em Python e podem ser usadas para verificar se uma string corresponde a um padrão ou não.
No exemplo a seguir, compararemos duas strings com um padrão usando expressões regulares.
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)
Resultado:
True
False
O padrão re
acima verifica se uma string começa com Ma
e é seguida por outras letras. É por isso que Mark
retorna True e ack
retorna 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.
LinkedIn