Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/02/2016, 15:41
sambu70
 
Fecha de Ingreso: febrero-2016
Mensajes: 2
Antigüedad: 8 años, 9 meses
Puntos: 0
Pregunta Problemas con codigo

Buenas compañeros, primero soy nuevo en el lenguaje de python y estoy llevando un curso con este lenguaje, estoy intentando compilar un código del juego de la vida, solo que me aparece este error:

Código:
Traceback (most recent call last):
File "python", line 75, in <module>
NameError: name 'recorre_cadena' is not defined
ya intente solucionarlo definiendo lo así: recorre_cadena=" " pero me sale otro error :

Código:
Traceback (most recent call last):
File "python", line 76, in <module>
TypeError: 'str' object is not callable
Alguien me podría apoyar como se solucionaría o en que me estoy equivocando, porfavor.
Código Python:
Ver original
  1. '''
  2. Automata con celdas binarias, donde cada celda tiene dos vecinos
  3. '''
  4. import sys
  5. # Imprimir resultado con el formato establecido: 0=blanco, 1=*.
  6. # Entrada: cadena
  7. # Salida: cadena con formato establecido (anexa guiones al principio y al final)
  8. cadena=" "
  9. resultado_formato=" "
  10. def imprime_resultado(cadena):
  11.     resultado_formato='_'
  12.     for caracter in cadena:
  13.         if caracter=='1':
  14.             resultado_formato=resultado_formato + '+'
  15.         else:
  16.             resultado_formato=resultado_formato + 'a'
  17.     print ("_")
  18.  
  19. def procesa_ventana():
  20.     if ventana[0]==ventana[2]:
  21.         resultado='1'
  22.     else:
  23.         resultado='0'
  24.  
  25. def recorre_cadena(cadena):
  26.     nueva_cadena=''
  27.     for i in range(0,len(cadena)-2):
  28.         n=len(cadena)
  29.         ventana=cadena[i:i+3]
  30.         nueva_cadena=nueva_cadena+procesa_ventana(ventana)
  31.         ultima_ventana=cadena[len(cadena)-2]+cadena[len(cadena)-1]+cadena[0]
  32.         primera_ventana=cadena[len(cadena)-1]+cadena[0]+cadena[1]
  33.         ultima_celda=procesa_ventana(ultima_ventana)
  34.         primer_celda=procesa_ventana(primera_ventana)
  35.         nueva_cadena=primer_celda+nueva_cadena+ultima_celda;
  36.     return nueva_cadena
  37.  
  38. # Main (parte principal del programa)
  39.  
  40. # Cadenas de prueba
  41. mi_cadena="0000000000000000000000000000000000100000000000000000000000000000000000"
  42.  
  43. # Toma la cantidad de iteraciones como argumento de la linea de comand
  44. iteraciones=sys.argv[0]
  45.  
  46.  
  47. for i in range(0,len(iteraciones)):
  48.     imprime_resultado(mi_cadena)
  49.     nueva_cadena=recorre_cadena(mi_cadena)
  50.     mi_cadena=nueva_cadena

Última edición por razpeitia; 06/02/2016 a las 16:30