elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Comprensión de lista en python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Comprensión de lista en python  (Leído 3,176 veces)
Joe Fraddy

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Comprensión de lista en python
« en: 17 Febrero 2015, 22:56 pm »

Bueno las instrucciones son estas, tal vez no lo entendí:

01. Usá una comprensión de lista para crear una lista, cubos_por_cuatro.
02. La comprensión debe consistir en los cubos de los números del 1 al 10 que son divisibles por cuatro.
03. Finalmente, mostrá con print esa lista en la ventana de Resultados.

Y el código que hice es este:

Código
  1. cubos_por_cuatro=[c for c in range(1,10) if (c*2) % 4 == 0]
  2. print cubos_por_cuatro

Si corre bien, el resultado es:

Código:
[2, 4, 6, 8]
None

Pero el error es que para que el ejercicio valga tenga cuatro valores:
Parece que cubos_por_cuatro no tiene el largo adecuado. Tiene que tener 5 valores.


En línea

Once

Desconectado Desconectado

Mensajes: 120


Ver Perfil WWW
Re: Comprensión de lista en python
« Respuesta #1 en: 17 Febrero 2015, 23:27 pm »

La parte de Python la tienes bien, lo que tienes mal es la parte matemática, el cubo de un número es el número al exponente 3 o el número multiplicado por si mismo tres veces.

Además, cuando haces for c in range(1, 10) en realidad estás recorriendo los números del 1 al 9

Ésta sería la correción:

Código
  1. cubos_por_cuatro=[c ** 3 for c in range(1,11) if (c**3) % 4 == 0]
  2. print cubos_por_cuatro

Citar
[8, 64, 216, 512, 1000]

Saludos!


« Última modificación: 18 Febrero 2015, 00:00 am por 11Sep » En línea

Joe Fraddy

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Re: Comprensión de lista en python
« Respuesta #2 en: 18 Febrero 2015, 00:15 am »

Excelente, si tenias razón, el código corrió bien, pero de hecho antes le ponía 11 y me daba un error, pero supongo que era debido a que no estaba bien la operación, pues yo la estaba haciendo al cuadrado, mientras que era al cubo.

saludos!!!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines