Pitão

Como filtrar uma lista de strings em Python

Como filtrar uma lista de strings em 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. método filter () é um método muito útil de 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 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 usar 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.

# Declara duas variáveis ​​de lista
list1 = ['Perl', 'PHP', 'Java', 'ASP']
list2 = ['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 = [x para x na lista2 se
todos (y não em x para y na lista1)]
 
# 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)
print ("O conteúdo da segunda lista após o filtro:", filter_data)

Resultado:

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 string 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 irá descobrir os valores comuns de ambas as variáveis ​​da lista.

# Declara duas variáveis ​​de lista
lista1 = ['90', '67', '34', '55', '12', '87', '32']
lista2 = ['9', '90', '38', '45', '12', '20']
 
# Declare uma função para filtrar dados da primeira lista
def Filtro (lista1, lista2):
retornar [n para n na lista1 se
qualquer (m em n para m na lista2)]
 
# 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)
print ("Os dados após o filtro", Filtro (lista1, lista2))

Resultado:

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 correspondido. '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'. '^'é 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 re
 
# Declare que a lista contém o código do assunto
sublist = ['CSE-407', 'PHY-101', 'CSE-101', 'ENG-102', 'MAT-202']
# Declare a função de filtro
def Filter (datalist):
# Pesquisar dados com base em expressão regular na lista
return [val para val em datalist
se re.pesquisa (r '^ CSE', val)]
# Imprima os dados do filtro
imprimir (filtro (sublista))

Resultado:

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
text = "Aprenda programação Python no blog de dicas do Linux"
# Divida o texto com base no espaço e armazene as palavras em uma lista
text_word = text.dividir()
# Usando a expressão lambda, filtre os dados
filter_text = ".join ((filtro (lambda val: val not i
n search_word, text_word)))
# Imprima o texto antes de filtrar e depois de filtrar
imprimir ("\ nTexto antes de filtrar: \ n", texto)
print ("Texto após filtragem: \ n", filter_text)

Resultado:

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() método armazena esses dados da lista se retornar verdadeiro, caso contrário, ele descarta os dados. Aqui, Nenhum é dado como o primeiro valor de parâmetro. Todos os valores sem falso será recuperado da lista como dados filtrados.

# Declare uma lista de dados de mixagem
listData = ['Hello', 200, 1, 'World', False, True, '0']
 
# Chame o método filter () com Nenhum e uma lista
filterData = filter (None, listData)
 
# Imprime a lista após filtrar os dados
print ('A lista após a filtragem:')
para val em filterData:
imprimir (val)

Resultado:

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.

Como alterar o ponteiro do mouse e tamanho do cursor, cor e esquema no Windows 10
O ponteiro do mouse e o cursor no Windows 10 são aspectos muito importantes do sistema operacional. Isso também pode ser dito para outros sistemas ope...
Mecanismos de jogos gratuitos e de código aberto para o desenvolvimento de jogos Linux
Este artigo cobrirá uma lista de mecanismos de jogo gratuitos e de código aberto que podem ser usados ​​para desenvolver jogos 2D e 3D no Linux. Exist...
Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...