Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] ValueError: too many values to unpack

Estas en el tema de ValueError: too many values to unpack en el foro de Python en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Python: Ver original """ Juego de adivinar el numero """ # Aqui importo los Modulos a usar (random y csv) import random ...
  #1 (permalink)  
Antiguo 15/02/2013, 17:13
Avatar de cufu8583  
Fecha de Ingreso: enero-2013
Ubicación: North Miami Beach
Mensajes: 24
Antigüedad: 11 años, 11 meses
Puntos: 1
ValueError: too many values to unpack

Código Python:
Ver original
  1. """
  2. Juego de adivinar el numero
  3. """
  4. # Aqui importo los Modulos a usar (random y csv)
  5. import random
  6. import csv
  7.  
  8. def juego1():
  9.    print"Bienvenido al juego adivina el numero"
  10.    nombre = raw_input("Ingresa tu nombre: ")
  11.    nombre.upper()
  12.    r = random.randrange(1,11)
  13.    
  14.    # print "debug",r me da la respuesta de random.
  15.    lista1 = [] # Esta lista es auxiliar, la usamos para guardar y leer del archivo csv.
  16.    num_intentos = 0
  17.    
  18.    while num_intentos <= 4:
  19.       num_intentos += 1
  20.       x = input("Ingresa un numero: ")    
  21.  
  22.       if x > r:
  23.          print "Ingresa un numero menor"
  24.       if x < r:
  25.          print "Ingresa un numero mayor"
  26.       if x == r:
  27.          print"Buen trabajo",nombre.upper(), "has adivinado el numero"
  28.          break
  29.      
  30.    else:
  31.       print "No tienes mas oportunidades"                
  32.  
  33.    
  34.    print "Numero de intentos:", num_intentos
  35.  
  36.    print "Ultimos 5 jugadores"
  37.    
  38.    lista = open("listajuego2.csv")
  39.    lista_csv = csv.reader(lista)
  40.  
  41.    for nombres,intentos in lista_csv:
  42.         lista1.append([nombres, intentos])
  43.    lista.close()
  44.    lista1.insert(0,[nombre.upper(),num_intentos])
  45.    
  46.    for y in lista1:
  47.       print y
  48.  
  49.    lista3 = open("listajuego2.csv","w")
  50.    lista3_csv = csv.writer(lista3)
  51.    lista3_csv.writerows(lista1[:4])
  52.    lista3.close()
  53.      
  54.          
  55. juego1()

Me da este error:

Traceback (most recent call last):
File "C:\Python27\adivinanumero.py", line 55, in <module>
juego1()
File "C:\Python27\adivinanumero.py", line 41, in juego1
for nombres,intentos in lista_csv:
ValueError: too many values to unpack

Y ayer que lo probe todo estaba bien y ahora me empezo a salir este error, alguien me podria explicar que es o cual es el error? Gracias de antemano.
  #2 (permalink)  
Antiguo 15/02/2013, 18:28
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: ValueError: too many values to unpack

El problema es que tu archivo listajuego2.csv tiene mas 2 columnas.
  #3 (permalink)  
Antiguo 15/02/2013, 22:09
Avatar de cufu8583  
Fecha de Ingreso: enero-2013
Ubicación: North Miami Beach
Mensajes: 24
Antigüedad: 11 años, 11 meses
Puntos: 1
Respuesta: ValueError: too many values to unpack

Ah si es verdad, muchismas gracias por tu ayuda razpeitia, ese era el problema.
  #4 (permalink)  
Antiguo 16/02/2013, 00:00
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: ValueError: too many values to unpack

De nada, no te olvides de marcar el tema como solucionado.

Etiquetas: values
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:52.