Filtrar una lista de cadenas usando otra lista
Este ejemplo muestra cómo se pueden filtrar los datos de una lista de cadenas sin utilizar ningún método. La lista de la cadena se filtra aquí usando otra lista. Aquí, se declaran dos variables de lista con el nombre list1 y list2. Los valores de list2 se filtra utilizando los valores de list1. El script coincidirá con la primera palabra de cada valor de list2 con los valores de list1 e imprime los valores que no existen en list1.
# Declare dos variables de listalist1 = ['Perl', 'PHP', 'Java', 'ASP']
list2 = ['JavaScript es un lenguaje de secuencias de comandos del lado del cliente',
'PHP es un lenguaje de secuencias de comandos del lado del servidor',
'Java es un lenguaje de programación',
'Bash es un lenguaje de secuencias de comandos']
# Filtrar la segunda lista según la primera lista
filter_data = [x para x en list2 si
todo (y no en x para y en list1)]
# Imprimir los datos de la lista antes del filtro y después del filtro
print ("El contenido de la primera lista:", lista1)
print ("El contenido de la segunda lista:", list2)
print ("El contenido de la segunda lista después del filtro:", filter_data)
Producción:
Ejecuta el script. Aquí, list1 no contiene la palabra 'Intento'. La salida contendrá solo un valor de list2 es decir 'Bash es un lenguaje de secuencias de comandos '.
Filtrar una lista de cadenas usando otra lista y función personalizada
Este ejemplo muestra cómo se puede filtrar una lista de cadenas utilizando otra lista y la función de filtro personalizado. El script contiene dos variables de lista llamadas list1 y list2. La función de filtro personalizado encontrará los valores comunes de ambas variables de lista.
# Declare dos variables de listalista1 = ['90', '67', '34', '55', '12', '87', '32']
lista2 = ['9', '90', '38', '45', '12', '20']
# Declare una función para filtrar datos de la primera lista
def Filtro (lista1, lista2):
devuelve [n para n en list1 si
cualquiera (m en n por m en list2)]
# Imprime los datos de la lista antes del filtro y después del filtro
print ("El contenido de list1:", list1)
print ("El contenido de list2:", list2)
print ("Los datos después del filtro", Filtro (lista1, lista2))
Producción:
Ejecuta el script. Existen 90 y 12 valores en ambas variables de lista. La siguiente salida se generará después de ejecutar el script.
Filtrar una lista de cadenas usando una expresión regular
La lista se filtra usando todas() y alguna() métodos en los dos ejemplos anteriores. En este ejemplo, se utiliza una expresión regular para filtrar los datos de una lista. Una expresión regular es un patrón mediante el cual se puede buscar o comparar cualquier dato. 're' El módulo se usa en Python para aplicar expresiones regulares en el script. Aquí, se declara una lista con códigos de materia. Se utiliza una expresión regular para filtrar los códigos de materia que comienzan con la palabra 'CSE'. '^'símbolo se utiliza en patrones de expresión regular para buscar al comienzo del texto.
# Importar módulo re para usar expresión regularimportar re
# Declarar que la lista contiene código de asunto
sublist = ['CSE-407', 'PHY-101', 'CSE-101', 'ENG-102', 'MAT-202']
# Declare la función de filtro
def Filter (lista de datos):
# Buscar datos basados en expresiones regulares en la lista
return [val para val en datalist
si eres.búsqueda (r '^ CSE', val)]
# Imprime los datos del filtro
imprimir (Filtro (sublista))
Producción:
Ejecuta el script. sublista La variable contiene dos valores que comienzan con 'CSE'. La siguiente salida aparecerá después de ejecutar el script.
Filtrar una lista de cadenas usando la expresión lamda
Este ejemplo muestra el uso de lamda expresión para filtrar datos de una lista de cadenas. Aquí, una variable de lista llamada buscar palabra se utiliza para filtrar el contenido de una variable de texto denominada texto. El contenido del texto se convierte en una lista denominada, palabra_texto basado en el espacio usando separar() método. lamda expresión omitirá esos valores de la palabra_texto que existen en buscar palabra y almacenar los valores filtrados en una variable agregando espacio.
# Declare una lista que contenga la palabra de búsquedasearch_word = ["Enseñar", "Código", "Programación", "Blog"]
# Defina el texto donde se buscará la palabra de la lista
text = "Aprenda a programar en Python del blog de sugerencias de Linux"
# Divida el texto según el espacio y almacene las palabras en una lista
text_word = texto.separar()
# Usando expresión lambda filtrar los datos
filter_text = ".unirse ((filtro (lambda val: val no i
n palabra_búsqueda, palabra_texto)))
# Imprimir texto antes de filtrar y después de filtrar
print ("\ nTexto antes de filtrar: \ n", texto)
print ("Texto después de filtrar: \ n", filter_text)
Producción:
Ejecuta el script. La siguiente salida aparecerá después de ejecutar el script.
Filtrar una lista de cadenas usando el método filter ()
filtrar() el método acepta dos parámetros. El primer parámetro toma un nombre de función o Ninguno y el segundo parámetro toma el nombre de la variable de lista como valores. filtrar() El método almacena esos datos de la lista si devuelve verdadero; de lo contrario, descarta los datos. Aquí, Ninguno se da como el primer valor de parámetro. Todos los valores sin falso se recuperarán de la lista como datos filtrados.
# Declare una lista de datos mixtoslistData = ['Hola', 200, 1, 'Mundo', Falso, Verdadero, '0']
# Llamar al método filter () con None y una lista
FilterData = filter (Ninguno, listData)
# Imprime la lista después de filtrar los datos
print ('La lista después de filtrar:')
para val en FilterData:
imprimir (val)
Producción:
Ejecuta el script. La lista contiene solo un valor falso que se omitirá en los datos filtrados. La siguiente salida aparecerá después de ejecutar el script.
Conclusión:
El filtrado es útil cuando necesita buscar y recuperar valores particulares de una lista. Espero que los ejemplos anteriores ayuden a los lectores a comprender las formas de filtrar datos de una lista de cadenas.