Python - Lista por comprensión

 
Vista:
sin imagen de perfil
Val: 7
Ha disminuido su posición en 15 puestos en Python (en relación al último mes)
Gráfica de Python

Lista por comprensión

Publicado por Lista Por comprensión (4 intervenciones) el 29/04/2020 17:06:59
Teniendo la siguiente lista, cómo puedo crear una lista por comprensión que tome la lista base para que la nueva lista solo tome las palabras que tengan 8 o menos Letras?


1
2
3
4
5
base = [‘RECOMPENSAR’, ’LEGISLAR’, ’DESEMBALLESTAR’, ’CONFLUIR’, ’CHICLEAR’, ’ENCAVARSE’,
’BARBOTAR’, ’PERFILAR’, ’PRETENDER’, ’AMUCHAR’, ’LIBRAR’, ’SOLTAR’, ’ESGONZAR’, ’OVALAR’,
’ALEBRARSE’, ’DESALMENAR’, ’ENCALAR’, ’VIGORAR’, ’MURMULLAR’, ’PREINSCRIBIR’, ’PINTEAR’,
’INFESTAR’, ’DOMEÑAR’, ’PERVIVIR’, ’PLAGIAR’, ’MALQUISTAR’, ’TITIRITEAR’, ’JAQUEAR’,
’BORDEAR’, ’ARRISCAR’, ’TRANSUSTANCIAR’, ’HIJUELAR]

Su ayuda de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Lista por comprensión

Publicado por tincopasan (1082 intervenciones) el 29/04/2020 18:31:20
hola:
supongo que por lo menos has entendido comprensión de listas, sino por las dudas.
primero el método tradicional
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
menores = []  #lista vacia
 
for palabra in base:     #recorremos la lista
    if  len(palabra)  <=8:  #condición donde comparamos el largo con 8
        menores.append(palabra) #agregamos a la lista
 
print(menores) #Anda, método tradicional
 
 
#lo mismo con comprensión de listas pero lo hago por partes
 
nueva=[]  #estoy declarando un lista pero todavia está vacía
 
nueva = [palabra]   #que es lo que voy a agregar, pero todavía no anda, pueder ser cualquier nombre de variable : x
 
nueva = [palabra for palabra in base] #aca agregue todas las plabras ejecutando el for ,está faltando la condición
 
print(nueva)  #por lo menos ya hay ua lista
 
nueva = [ palabra for palabra in base if len(palabra) <=8]  #ahora en este caso, agrego la condición al final
otra = [ x for x in base if len(x) <=8]  #ahora en este caso, cambié el nombre de la variable
 
print(nueva)
print(otra)
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar