Como filtrar uma lista de strings em Python

How Filter List Strings Python



Python usa tipo de dados de lista para armazenar vários dados em um índice sequencial. Funciona como uma matriz numérica de outras linguagens de programação. O método filter () é um método muito útil do Python. Um ou mais valores de dados podem ser filtrados de qualquer string ou lista ou dicionário em Python usando o método filter (). Ele filtra os dados com base em qualquer condição particular. Ele armazena dados quando a condição retorna verdadeiro e descarta os dados quando retorna falso. Como os dados da string em uma lista podem ser filtrados em Python é mostrado neste artigo usando diferentes exemplos. Você deve usar o Python 3+ para testar os exemplos deste artigo.

Filtre uma lista de string usando outra lista

Este exemplo mostra como os dados em uma lista de strings podem ser filtrados sem o uso de nenhum método. A lista da string é filtrada aqui usando outra lista. Aqui, duas variáveis ​​de lista são declaradas com o nome lista1 e lista2 . Os valores de lista2 é filtrado usando os valores de lista1 . O script irá corresponder à primeira palavra de cada valor de lista2 com os valores de lista1 e imprimir os valores que não existem em lista1 .







# Declare duas variáveis ​​de lista
lista1= ['Perl', 'PHP', 'Java', 'ASP']
lista2= ['JavaScript é uma linguagem de script do lado do cliente',
'PHP é uma linguagem de script do lado do servidor',
'Java é uma linguagem de programação',
'Bash é uma linguagem de script']

# Filtre a segunda lista com base na primeira lista
filter_data= [xparaxnolista2E se
tudo(enão noxparaenolista1)]

# Imprime os dados da lista antes do filtro e depois do filtro
imprimir('O conteúdo da primeira lista:',lista1)
imprimir('O conteúdo da segunda lista:',lista2)
imprimir('O conteúdo da segunda lista após o filtro:',filter_data)

Saída:



Execute o script. Aqui, lista1 não contém a palavra ‘ Bash ’. A saída conterá apenas um valor de lista2 isso é ' Bash é uma linguagem de script ' .







Filtre uma lista de strings usando outra lista e função personalizada

Este exemplo mostra como uma lista de string pode ser filtrada usando outra lista e a função de filtro personalizado. O script contém duas variáveis ​​de lista chamadas list1 e list2. A função de filtro personalizado descobrirá os valores comuns de ambas as variáveis ​​da lista.

# Declare duas variáveis ​​de lista
lista1= ['90', '67', '3. 4', '55', '12', '87', '32']
lista2= ['9', '90', '38', 'Quatro cinco', '12', 'vinte']

# Declare uma função para filtrar dados da primeira lista
defFiltro(lista1,lista2):
Retorna [nparannolista1E se
algum(mnonparamnolista2)]

# Imprime os dados da lista antes do filtro e depois do filtro
imprimir('O conteúdo da lista1:',lista1)
imprimir('O conteúdo da lista2:',lista2)
imprimir('Os dados após o filtro',Filtro(lista1,lista2))

Saída:



Execute o script. 90 e 12 valores existem em ambas as variáveis ​​de lista. A seguinte saída será gerada após a execução do script.

Filtre uma lista de strings usando uma expressão regular

A lista é filtrada usando tudo() e algum() métodos nos dois exemplos anteriores. Uma expressão regular é usada neste exemplo para filtrar os dados de uma lista. Uma expressão regular é um padrão pelo qual qualquer dado pode ser pesquisado ou combinado. 'ré' módulo é usado em python para aplicar expressão regular no script. Aqui, uma lista é declarada com códigos de assunto. Uma expressão regular é usada para filtrar os códigos de assunto que começam com a palavra, ‘ CSE '. ' ^ 'Símbolo é usado em padrões de expressão regular para pesquisar no início do texto.

# Importe o módulo re para usar a expressão regular
importar

# Declare que a lista contém o código do assunto
sublista= ['CSE-407', 'PHY-101', 'CSE-101', 'ENG-102', 'MAT-202']

# Declare a função de filtro
defFiltro(datalist):
# Pesquisar dados com base em expressão regular na lista
Retorna [horasparahorasnodatalist
E se .procurar(r'^ CSE',horas)]

# Imprima os dados do filtro
imprimir(Filtro(sublista))

Saída:

Execute o script. sublista variável contém dois valores que começam com ‘ CSE ’. A seguinte saída aparecerá após a execução do script.

Filtre uma lista de strings usando a expressão lamda

Este exemplo mostra o uso de lamda expressão para filtrar dados de uma lista de strings. Aqui, uma variável de lista chamada search_word é usado para filtrar o conteúdo de uma variável de texto chamada texto . O conteúdo do texto é convertido em uma lista chamada, text_word com base no espaço usando dividir() método. lamda expressão irá omitir esses valores do text_word que existe em search_word e armazene os valores filtrados em uma variável adicionando espaço.

# Declare uma lista que contém a palavra de pesquisa
search_word= ['Ensinar', 'Código', 'Programação', 'Blog']

# Defina o texto onde a palavra da lista irá pesquisar
texto= 'Aprenda Programação Python com Linux Hint Blog'

# Divida o texto com base no espaço e armazene as palavras em uma lista
text_word=texto.dividir()

# Usando a expressão lambda, filtre os dados
filter_text= ''.Junte((filtro(lambdaval: valnãoeu
n search_word,text_word)))

# Imprima o texto antes de filtrar e depois de filtrar
imprimir(' nTexto antes de filtrar: n',texto)
imprimir('Texto após filtragem: n',filter_text)

Saída:

Execute o script. A seguinte saída aparecerá após a execução do script.

Filtre uma lista de strings usando o método filter ()

filtro() método aceita dois parâmetros. O primeiro parâmetro leva um nome de função ou Nenhum e o segundo parâmetro leva o nome da variável da lista como valores. filtro() O método armazena esses dados da lista se retornar verdadeiro, caso contrário, ele descarta os dados. Aqui, Nenhum é fornecido como o primeiro valor do parâmetro. Todos os valores sem falso serão recuperados da lista como dados filtrados.

# Declare uma lista de dados de mixagem
listData= ['Olá', 200, 1, 'Mundo', Falso, Verdade, '0']

# Chame o método filter () com Nenhum e uma lista
filterData= filtro(Nenhum,listData)

# Imprime a lista após filtrar os dados
imprimir('A lista após a filtragem:')
parahorasnofilterData:
imprimir(horas)

Saída:

Execute o script. A lista contém apenas um valor falso que será omitido nos dados filtrados. A seguinte saída aparecerá após a execução do script.

Conclusão:

A filtragem é útil quando você precisa pesquisar e recuperar valores específicos de uma lista. Espero que os exemplos acima ajudem os leitores a entender as maneiras de filtrar dados de uma lista de strings.