DEV Community

Cristian Fernando
Cristian Fernando

Posted on

Ibuprofeno.py馃拪| #54: Explica este c贸digo Python

Explica este c贸digo Python

Dificultad: Intermedio

## Reto #54
my_string = "52,69,10,47,230,5,415,233"
mi_list = [ int(value) for value in my_string.split(",") if len(value) == 3]
print(mi_list)
Enter fullscreen mode Exit fullscreen mode

馃憠 A. [52, 69, 10, 47]
馃憠 B. ['230', '415', '233']
馃憠 C. [230, 415, 233]
馃憠 D. ['230415233']


Respuesta en el primer comentario.

Top comments (1)

Collapse
 
duxtech profile image
Cristian Fernando

Respuesta:
馃憠 C. [230, 415, 233]

Las listas comprimidas son una caracter铆stica brutal de Python. Permite al programador escribir listas complejas de una manera sencilla y en una sola l铆nea de c贸digo.

Para entender mejor como es que funcionan las listas comprimidas sugiero aprender primero su sintaxis:

mi_list = [ VALUE LOOP CONDITION] 
Enter fullscreen mode Exit fullscreen mode

Donde:

  • value: es el valor que tendr谩 cada item en la lista.
  • loop: es el ciclo que usaremos para generar la lista.
  • condition: es la condici贸n opcional que podemos usar para filtrar el resultado final de nuestra lista.

Volviendo al ejemplo:

  • value:
    int(value) indica que cada item de la lista resultante sera convertida a entero.

  • loop:
    for value in my_string.split(",") indica que iteraremos sobre la cadena my_string convirtiendola a una lista usando el m茅todo split() y almacenando cada item en una variable value.

  • condition:
    if len(value) == 3 indica que solo tomaremos en cuenta a los items cuya longitud sea igual a 3 o en otras palabras, n煤meros de 3 digitos.

Finalmente pasado todos los filtros el resultado final queda: [230, 415, 233].