Tengo una lista de oraciones llamada s2. Me gustaría bajar las palabras que contiene y dividir todas las oraciones en palabras. Intento así:
s2 = s2_s.lower().split()
Pero recibí un mensaje de error:
'list' object has no attribute 'lower'
¿Alguna idea por favor?
Gracias
3 respuestas
Debe usar una comprensión de la lista para recorrer cada valor de su lista y llame a .lower().split()
en cada uno de los valores:
s2 = [s.lower().split() for s in s2_s]
Usando lambda
list_of_sent =[] # your list
sol = list(map(lambda x : x.lower().split(' '), list_of_sent))
No puede aplicar una función inferior en la lista. La función inferior se puede aplicar en cadena. Puede usar la comprensión de la lista en la lista.
>>>s2=['AB','ab','d','k']
>>> s2=[x.lower() for x in s2]
>>> s2
['ab', 'ab', 'd', 'k']
Preguntas relacionadas
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.