Encontre String na Lista em Python
-
Use o loop
for
para encontrar elementos de uma lista que contenha uma substring específica em Python -
Use a função
filter()
para encontrar elementos de uma lista Python que contenham uma substring específica - Use as expressões regulares para encontrar elementos de uma lista Python que contenham um substring específico
Este tutorial irá apresentar como encontrar elementos de uma lista Python que possuem uma substring específica.
Vamos trabalhar com a seguinte lista e extrair strings que contenham ack
.
my_list = ["Jack", "Mack", "Jay", "Mark"]
Use o loop for
para encontrar elementos de uma lista que contenha uma substring específica em Python
Nesse método, iteramos pela lista e verificamos se a substring está presente em um elemento específico ou não. Se a substring estiver presente no elemento, então a armazenamos na string. O código a seguir mostra como:
str_match = [s for s in my_list if "ack" in s]
print(str_match)
Resultado:
['Jack', 'Mack']
A palavra-chave in
verifica se a string fornecida, "ack"
neste exemplo, está presente na string ou não. Ele também pode ser substituído pelo método __contains__
, que é um método mágico da classe string. Por exemplo:
str_match = [s for s in my_list if s.__contains__("ack")]
print(str_match)
Resultado:
['Jack', 'Mack']
Use a função filter()
para encontrar elementos de uma lista Python que contenham uma substring específica
A função filter()
recupera um subconjunto dos dados de um determinado objeto com a ajuda de uma função. Este método usará a palavra-chave lambda
para definir a condição de filtragem de dados. A palavra-chave lambda
cria uma função lambda
de uma linha em Python. Veja o seguinte trecho de código.
str_match = list(filter(lambda x: "ack" in x, my_list))
print(str_match)
Resultado:
['Jack', 'Mack']
Use as expressões regulares para encontrar elementos de uma lista Python que contenham um substring específico
Uma expressão regular é uma sequência de caracteres que pode atuar como um padrão de correspondência para pesquisar elementos. Para usar expressões regulares, temos que importar o módulo re
. Neste método, usaremos o loop for
e o método re.search()
, que é usado para retornar um elemento que corresponde a um padrão específico. O código a seguir explicará como:
import re
pattern = re.compile(r"ack")
str_match = [x for x in my_list if re.search("ack", x)]
print(str_match)
Resultado:
['Jack', 'Mack']
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