14.3. Otro ejemplo

Vamos a convertir incremento (de la Sección 13.3) en un metodo. Para ahorrar espacio, dejaremos a un lado los métodos ya definidos, pero usted debería mantenerlos en su versión:

   1: class Hora:
   2:     #aquí van las definiciones anteriores de métodos...
   3:     def incremento(self, segundos):
   4:         self.segundos = segundos + self.segundos
   5:         while self.segundos >= 60:
   6:             self.segundos = self.segundos - 60
   7:             self.minutos = self.minutos + 1
   8:         while self.minutos >= 60:
   9:             self.minutos = self.minutos - 60
  10:             self.horas = self.horas + 1

La transformación es puramente mecánica; hemos llevado la definición del metodo al interior de la definición de la clase y hemos cambiado el nombre del primer parámetro.


Ahora podemos invocar incremento como un metodo.




   1: horaActual.incremento(500)

De nuevo, el objeto sobre el que invocamos el metodo se asigna al primer parámetro, self. El segundo parámetro, segundos toma el valor de 500.


Como ejercicio, convierta convertirASegundos (de la Sección 13.5) en un metodo de la clase Hora.

0