Comprobación de Python si la lista contiene una cadena
-
Use el bucle
for
para verificar una cadena específica en una lista de Python - Use la comprensión de la lista para verificar una cadena específica en una lista de Python
-
Utilice la función
filter()
para obtener una cadena específica en una lista de Python
Las cadenas son una secuencia de caracteres. Al igual que las cadenas almacenan caracteres en posiciones específicas, podemos usar listas para almacenar una colección de cadenas.
En este tutorial, obtendremos una cadena con valores específicos en una lista de Python.
Use el bucle for
para verificar una cadena específica en una lista de Python
El for
se usa para iterar sobre una secuencia en Python.
Su implementación para obtener una cadena que contiene valores específicos se muestra en el siguiente ejemplo.
py_list = ["a-1", "b-2", "c-3", "a-4"]
new_list = []
for x in py_list:
if "a" in x:
new_list.append(x)
print(new_list)
Producción :
['a-1','a-4']
En el código anterior, la instrucción if
se usa dentro del bucle for
para buscar cadenas que contengan a
en la lista py_list
. Se crea otra lista denominada new_list
para almacenar esas cadenas específicas.
Use la comprensión de la lista para verificar una cadena específica en una lista de Python
Comprensión de listas es una forma de crear nuevas listas basadas en la lista existente. Ofrece una sintaxis más corta siendo más compacta y rápida que las otras funciones y bucles utilizados para crear una lista.
Por ejemplo,
py_list = ["a-1", "b-2", "c-3", "a-4"]
r = [s for s in py_list if "a" in s]
print(r)
Producción :
['a-1', 'a-4']
En el código anterior, la comprensión de listas se utiliza para buscar cadenas que tengan a
en la lista py_list
.
Tenga en cuenta que escribir el mismo código utilizando otras funciones o bucles habría llevado más tiempo, ya que se requiere más código para su implementación, pero la comprensión de listas resuelve ese problema.
También podemos usar la comprensión de listas para encontrar cadenas que contengan múltiples valores específicos, es decir, podemos encontrar cadenas que contengan a
y b
en py_list
combinando las dos comprensiones.
Por ejemplo,
py_list = ["a-1", "b-2", "c-3", "a-4", "b-8"]
q = ["a", "b"]
r = [s for s in py_list if any(xs in s for xs in q)]
print(r)
Producción :
['a-1', 'b-2', 'a-4','b-8']
Utilice la función filter()
para obtener una cadena específica en una lista de Python
La función filter()
filtra el iterable dado con la ayuda de una función que comprueba si cada elemento satisface alguna condición o no.
Devuelve un iterador que aplica la comprobación para cada uno de los elementos del iterable.
Por ejemplo,
py_lst = ["a-1", "b-2", "c-3", "a-4"]
filter(lambda x: "a" in x, py_lst)
print(filter(lambda x: "a" in x, py_lst))
Producción :
<filter object at 0x7fd36c1905e0>
Tenga en cuenta que la salida anterior es un objeto de tipo filtro-iterador ya que la función filter()
devuelve un iterador en lugar de una lista.
Podemos usar la función list()
como se muestra en el código siguiente para obtener una lista.
list(filter(lambda x: "a" in x, py_lst))
Producción :
['a-1','a-4']
En el código anterior, hemos utilizado filter()
para encontrar una cadena con valores específicos en la lista py_list
.
Artículo relacionado - Python String
- Eliminar comas de cadena en Python
- Cómo comprobar si una cadena está vacía de forma ptónica
- Convertir una cadena en nombre de variable en Python
- Cómo eliminar los espacios en blanco de una cadena en Python
- Cómo extraer números de una cadena en Python
- Cómo convertir una cadena a datetime en Python
Artículo relacionado - Python List
- Convertir un diccionario en una lista en Python
- Eliminar todas las apariciones de un elemento de una lista en Python
- Eliminar duplicados de una lista en Python
- Cómo obtener el promedio de una lista en Python
- ¿Cuál es la diferencia entre los métodos de lista que añaden y amplían
- Cómo convertir una lista en cadena en Python