Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/02/2013, 01:40
Avatar de cufu8583
cufu8583
 
Fecha de Ingreso: enero-2013
Ubicación: North Miami Beach
Mensajes: 24
Antigüedad: 11 años, 3 meses
Puntos: 1
IndexError: list index out of range

Código Python:
Ver original
  1. # Aqui es donde tengo todos los Modulos.
  2.  
  3. def bienvenidos():
  4.    print "Binevenidos a Agenda Telefonica"
  5.    print "Elige una opcion:"
  6.    print "1- Anadir un registro a la Agenda: "
  7.    print "2- Listar el contenido de la Agenda: "
  8.    print "3- Buscar por nombre: "
  9.  
  10. def escribir():
  11.    print "Has seleccionado Anadir un Registro a la Agenda."  
  12.    nombre = raw_input("Ingrese el nombre del contacto: ")
  13.    telefono = raw_input("Ingrese el numero de telefono del contacto: ")
  14.    
  15.    agenda = open("agendatelefonica.csv")
  16.    for n in range(1,40):
  17.       linea = agenda.readline()
  18.       lineapartida = linea.split(',')
  19. ##      print lineapartida[0]
  20.      
  21.       if lineapartida[0] != "":
  22.          memoria = lineapartida[0]
  23. ##   print "El ultimo numero es: ",memoria        
  24.    agenda.close()
  25.  
  26.    memonum = int(memoria)
  27.    posicion = 0
  28.    posicion = memonum + 1  
  29.    postr = str(posicion)
  30.    print "El nombre del contacto es: ",nombre,"y su numero de telefono es: ",telefono
  31.    agenda = open("agendatelefonica.csv",'a')
  32.    agenda.write(postr)
  33.    agenda.write(',')
  34.    agenda.write(nombre)
  35.    agenda.write(',')
  36.    agenda.write(telefono)
  37.    agenda.write("\n")
  38.    agenda.close()
  39.  
  40. def listar(fin):
  41.    print "Has seleccionado Listar el contenido de la Agenda."
  42.    agenda = open("agendatelefonica.csv")
  43.    numero = 0
  44.    for i in range(1,fin):
  45.       lectura = agenda.readline()
  46.       print lectura.replace(',',"\t\t")
  47.       numero = numero + 1      
  48.    print "Ya he terminado de leer la agenda"
  49.    agenda.close()
  50.  
  51. def mierror():
  52.    print "Esa opcion es invalida."
  53.  
  54. def buscador(nombrebuscado):
  55.     print "Aqui buscare las coincidencias: "
  56.     agenda = open("agendatelefonica.csv")
  57.     for i in range(1,30):
  58.        i = agenda.readline()
  59.        partido = i.split(',')
  60.        if nombrebuscado == partido[1]:
  61.           print partido[2]          
  62.     agenda.close()

Estoy siguiendo un curso de python y estamos creando una agenda, pero me sale este error:



if nombrebuscado == partido[1]:
IndexError: list index out of range

El problema es que los cursos son en python 3 y yo uso el python 2.7, ya le he modificado muchas cosas de python 3 para que funcione en python 2.7.

# y este es el principal programa de donde lo corrro:

Código Python:
Ver original
  1. import modulo
  2.  
  3. def principal():
  4.    modulo.bienvenidos()
  5.  
  6.    opcion = input("> ")
  7.  
  8.    print "Has seleccionado la opcion: ",opcion
  9.  
  10.    if opcion == 1:
  11.       modulo.escribir()
  12.       principal()
  13.    elif opcion == 2:
  14.       print "Selecciona cuantos registros quieres ver: "
  15.       registros = raw_input("> ")
  16.       registrosnumero = int(registros)
  17.       modulo.listar((registrosnumero+1))
  18.       principal()
  19.    elif opcion == 3:      
  20.       print "Dime el nombre de la persona que estas buscando: "
  21.       nombrebuscado = raw_input('> ')
  22.       modulo.buscador(nombrebuscado)
  23.       principal()
  24.      
  25.    else:
  26.       modulo.mierror()
  27.       principal()
  28.  
  29. principal()