Ver Mensaje Individual
  #4 (permalink)  
Antiguo 18/04/2010, 11:39
stiwi222
 
Fecha de Ingreso: noviembre-2009
Mensajes: 186
Antigüedad: 15 años
Puntos: 2
Respuesta: problema con clases

bueno, he querido seguir haciendo el programa y me ha salido esto:
Código python:
Ver original
  1. import random
  2.  
  3. class Palabra:
  4.     def __init__(self, palabra):
  5.         self.lista = ['hola']
  6.         self.palabra = palabra
  7.          
  8.         self.final = []
  9.  
  10.     def anyadir(self):
  11.         self.lista.append(self.palabra)
  12.  
  13.     def elegir(self):
  14.         random.shuffle(self.lista)
  15.         self.final = self.lista[0]
  16.  
  17.  
  18. class NoAdivinada:
  19.     def __init__(self, palabra):
  20.         self.palabra = palabra
  21.         self.rayas = '_' * palabra.__len__()
  22.         self.letra = ''
  23.         self.veces = 0
  24.         self.vidas = 5
  25.  
  26.     def pedir_letra(self):
  27.         self.letra = raw_input('¿que letra crees que es? ')
  28.         print self.letra
  29.  
  30.     def sustituir(self):
  31.         for i in range(len(self.palabra)):
  32.             if self.palabra[i] in self.letra:
  33.  
  34.                 self.rayas = self.rayas[:i] + self.palabra[i] + self.rayas[i+1:]
  35.                 self.veces = self.veces+1
  36.                 print 'bien, esta en la palabra'
  37.                
  38.  
  39.             else:
  40.                 self.vidas = self.vidas-1
  41.                 print 'ohh, te quedan', self.vidas, 'vidas', self.rayas
  42.  
  43.             break    
  44.  
  45.                              
  46.        
  47.  
  48. a = Palabra('python')
  49. a.anyadir()
  50. a.elegir()
  51. palabra = str(a.elegir())
  52.  
  53. sin_adivinar = NoAdivinada(palabra)
  54.  
  55. sin_adivinar.pedir_letra()
  56. sin_adivinar.sustituir()
  57.  
  58.  
  59.  
  60.  
  61. print a.lista, a.palabra, a.final

pero meta la letra que meta me salta al else en el metodo sustituir, ¿por que?

muchas gracias