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

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


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

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Error python purificar lista
« en: 16 Febrero 2015, 22:16 pm »

Bueno este es un ejercicio donde tengo que purificar una lista, tengo que sacar todos los impares pero no se porque me da un error:

Código
  1. def purificar(lista):
  2.    cont=0
  3.    while cont < len(lista):
  4.        if lista[cont] % 2 != 0:
  5.            lista.pop(cont)
  6.        cont+=1
  7.    return lista

Así no me alcanza a checar el último valor de la lista, pero si le agrego el =

así:

Código
  1.    while cont <= len(lista):

Me da el siguiente error:

Código:
Traceback (most recent call last):
  File "purificar.py", line 4, in purificar
    if lista[cont] % 2 != 0:
IndexError: list index out of range

Pero no se porque esta mal mi sentencia


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Error python purificar lista
« Respuesta #1 en: 16 Febrero 2015, 22:36 pm »

Código
  1. oList  = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
  2. iCount = 0
  3. while iCount <= len(oList)-1:
  4.    if(oList[iCount] % 2 == 0):
  5.        print oList[iCount]
  6.    iCount = iCount + 1


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
Joe Fraddy

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Re: Error python purificar lista
« Respuesta #2 en: 16 Febrero 2015, 22:47 pm »

No me sucede lo mismo, y según veo ese programa solamente imprime en pantalla los números pares, pero lo que estoy tratando de hacer es modificar la lista borrando los impares.

Para eso yo creo que haría algo así:

Código
  1. def purificar(lista):
  2.    for x in lista:
  3.        if x % 2 == 0:
  4.            print x,
« Última modificación: 16 Febrero 2015, 22:52 pm por Joe Fraddy » En línea

Joe Fraddy

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Re: Error python purificar lista
« Respuesta #3 en: 16 Febrero 2015, 22:58 pm »

Pero de todos modos ya lo tengo el ejercicio se resuelve así:

Código
  1. def purificar(lista):
  2.    lst=[]
  3.    for x in lista:
  4.        if x % 2 == 0:
  5.            lst.append(x)    
  6.    return lst

Saludos!!!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Lista de matrices python
Scripting
Ikku 2 10,951 Último mensaje 12 Septiembre 2009, 13:20 pm
por Ikku
[Python] - La media de una lista « 1 2 »
Scripting
Meta 13 24,586 Último mensaje 26 Noviembre 2010, 13:57 pm
por Novlucker
[PYTHON]Guardar una lista en TXT
Scripting
wACtOr 0 8,726 Último mensaje 15 Febrero 2011, 21:30 pm
por wACtOr
Comprensión de lista en python
Scripting
Joe Fraddy 2 2,759 Último mensaje 18 Febrero 2015, 00:15 am
por Joe Fraddy
Error de comprensión de la lista de Python: resultado inesperado
Scripting
adhar2 1 3,721 Último mensaje 29 Agosto 2023, 14:53 pm
por reymosquito
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines