@propiedad
@property es un decorador que modifica el método dentro de una clase a la propiedad de la clase.
Para crear la propiedad, debes crear un método con el decorador @property anterior.
123456789101112131415class CinemaHall: def __init__(self, rows, seats_in_row): self.rows = rows self.seats_in_row = seats_in_row @property def capacity(self): return self.rows * self.seats_in_row hall = CinemaHall(24, 12) print(hall.capacity) hall.rows = 5 hall.seats_in_row = 11 print(hall.capacity)
En el ejemplo anterior, puede ver una sala de cine que tiene los atributos rows y seats_in_row. La propiedad capacidad devuelve el número total de asientos de la sala. No tendría sentido crear un atributo capacidad separado porque si cambiamos el número de filas, tendríamos valores contradictorios. En concreto, no se realiza ninguna acción con la clase; sólo se devuelve una de las propiedades de la sala.
Las propiedades deben tener una lógica específica: deben devolver un determinado atributo de la clase, a diferencia de los métodos que se utilizan para realizar acciones específicas con la clase.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 2.78
@propiedad
Desliza para mostrar el menú
@property es un decorador que modifica el método dentro de una clase a la propiedad de la clase.
Para crear la propiedad, debes crear un método con el decorador @property anterior.
123456789101112131415class CinemaHall: def __init__(self, rows, seats_in_row): self.rows = rows self.seats_in_row = seats_in_row @property def capacity(self): return self.rows * self.seats_in_row hall = CinemaHall(24, 12) print(hall.capacity) hall.rows = 5 hall.seats_in_row = 11 print(hall.capacity)
En el ejemplo anterior, puede ver una sala de cine que tiene los atributos rows y seats_in_row. La propiedad capacidad devuelve el número total de asientos de la sala. No tendría sentido crear un atributo capacidad separado porque si cambiamos el número de filas, tendríamos valores contradictorios. En concreto, no se realiza ninguna acción con la clase; sólo se devuelve una de las propiedades de la sala.
Las propiedades deben tener una lógica específica: deben devolver un determinado atributo de la clase, a diferencia de los métodos que se utilizan para realizar acciones específicas con la clase.
¡Gracias por tus comentarios!