Digamos que tengo esta lista: list = ['hello','world','spam','eggs']
y quiero borrar todo de esa lista, EXCEPTO 'mundo'. ¿Cómo hago esto?
2 respuestas
Otra solución es comprobar si existe 'mundo' en su lista. Si no, asigne una lista vacía.
list = ['hello','world','spam','eggs']
if 'world' in list:
list = ['world'] * list.count('world')
else:
list = []
print(list)
Puede usar la comprensión de la lista para esto como:
l = ['hello','world','spam','eggs']
only = [item for item in l if item == 'world'] # ['world']
Si desea hacerlo para varias palabras, puede almacenar sus filtros de esta manera:
l = ['hello','world','spam','eggs']
filters = ['hello', 'world']
only = [item for item in l if item in filters] # ['hello', 'world']
O también puede usar la función filter
como esta:
l = ['hello','world','spam','eggs']
only = filter(lambda x: x == 'hello', l) # ['hello']
En total, considere ahora llamar a sus variables por el nombre del tipo, llamando a algo list
anular el constructor list
, que puede conducir a otros problemas en el futuro
Preguntas relacionadas
Preguntas vinculadas
Nuevas preguntas
python
Python es un lenguaje de programación multipropósito, de tipificación dinámica y de múltiples paradigmas. Está diseñado para ser rápido de aprender, comprender y usar, y hacer cumplir una sintaxis limpia y uniforme. Tenga en cuenta que Python 2 está oficialmente fuera de soporte a partir del 01-01-2020. Aún así, para preguntas de Python específicas de la versión, agregue la etiqueta [python-2.7] o [python-3.x]. Cuando utilice una variante de Python (por ejemplo, Jython, PyPy) o una biblioteca (por ejemplo, Pandas y NumPy), inclúyala en las etiquetas.