Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/exercises/es/15_metodos-privadas.py
blob: 767d4a5d7f9d9d64cd8270ddcabb458c162b2602 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/python
# coding=utf-8

"""Factorizar un código común a partir de dos métodos en un nuevo método
privado.

Parte del código en la clase a continuación se repite. Busque las dos líneas de
código repetido y moverlos a un nuevo método privado que debe ser llamado desde
los lugares se retiró el código duplicado desde.

Recuerde documentar el nuevo método que utiliza una docstring!
"""

class Counter(object):
    """Un contador que se incrementa o se restablece.

     Esto podría ser utilizado para el recuento de las personas que pasan a
     través de una puerta de entrada, para ejemplo. Cada vez que cambia el
     valor de venta libre, se imprime el mismo mensaje.
    """
    def __init__(self):
        self._counter = 0

    def get_counter(self):
        """Devolver el valor del contador."""
        return self._counter

    def increment_counter(self):
        """Incrementar el valor del contador e imprimir un mensaje."""
        self._counter += 1
        print('Contador es ahora: %i' % self._counter)

    def reset_counter(self):
        """Restablecer el valor del contador a 0 e imprimir un mensaje."""
        self._counter = 0
        print('Contador es ahora: %i' % self._counter)


# Código de probar su clase. No modifique nada por debajo de esta línea.
counter = Counter()
assert(counter.get_counter() == 0)
counter.increment_counter()
assert(counter.get_counter() == 1)
counter.increment_counter()
assert(counter.get_counter() == 2)
counter.reset_counter()
assert(counter.get_counter() == 0)

assert(Counter.__doc__ is not None)
assert(Counter.get_counter.__doc__ is not None)
assert(Counter.increment_counter.__doc__ is not None)
assert(Counter.reset_counter.__doc__ is not None)