Instrução if com strings em Python
Em Python, a instrução if
executa um bloco de código quando uma condição é atendida. Geralmente é usado com a palavra-chave else
, que executa um bloco se a condição na instrução if
não for atendida.
Este artigo discutirá o uso da instrução if
com strings em Python.
Uma string é uma cadeia de caracteres, onde cada caractere está em um índice específico e pode ser acessado individualmente.
Podemos verificar uma string em relação a um conjunto de strings usando a palavra-chave in
. O conjunto de strings pode ter a forma de uma lista e, mesmo que um elemento corresponda, ele executará o bloco if
.
Por exemplo,
a = "y"
if a in ["y", "Y", "yes", "Yes", "YES"]:
print("Match")
else:
print("No match")
Produção:
Match
Precisamos ter certeza de todas as correspondências possíveis, já que o Python diferencia maiúsculas de minúsculas. A outra maneira de economizar tempo é eliminando as entradas em maiúsculas ou minúsculas, convertendo-as em um formato antes de verificar a condição na instrução if
. Podemos usar a função lower()
ou upper()
para converter a string para um único caso.
Por exemplo,
a = "YES"
if a.lower() in ["y", "yes"]:
print("Match")
else:
print("No match")
Produção:
Match
Podemos realizar comparações de strings usando a instrução if
. Podemos usar operadores relacionais com as strings para realizar comparações básicas.
Veja o código abaixo.
a = "Hamed"
b = "Mark"
if a != b:
print("Not equal")
else:
print("Equal")
if a < b:
print("Two is greater")
else:
print("One is greater")
Produção:
Not equal
Two is greater
Realizamos várias operações no exemplo acima.
Também podemos verificar se os caracteres não estão ordenados, mas são os mesmos, usando a função sorted()
na operação de igualdade. O operador is
também pode ser usado em strings. Ele verifica se os dois objetos se referem ao mesmo objeto ou não.
Por exemplo,
a = "mnba"
b = "nbam"
c = b
if sorted(a) == sorted(b):
print("Equal")
else:
print("Not equal")
if c is b:
print("True")
Produção:
Equal
True
No exemplo acima, as duas strings eram iguais quando classificadas na ordem adequada. Além disso, as cadeias c
e b
referem-se à mesma cadeia. É por isso que o operador is
retorna True
.