Index of content
Observe cómo ahora podemos escribir persona.edad y persona.edad = 21; en ambos
en estos casos estamos accediendo a la propiedad edad que da como resultado el método get_age()
y set_age() siendo ejecutados respectivamente. Por lo tanto, el colocador sigue protegiendo al
actualice el atributo _age subyacente que realmente se usa para contener el valor real.
También tenga en cuenta que si no se proporciona un método para uno de los métodos fget, fset, fdel
métodos entonces esto no es un error; simplemente indica que la propiedad no
admite ese tipo de accesorio. Por lo tanto, la propiedad de nombre es una propiedad de solo lectura, ya que
no define un método setter.
Se puede usar un método de eliminación para liberar la memoria asociada con un atributo;
en el caso de un int no es necesario pero puede ser necesario para un más complejo,
tipo definido por el usuario.
Por lo tanto, podríamos escribir:
Tenga en cuenta que estamos usando una referencia de palabra clave para el método de eliminación, ya que tenemos
omitió el colocador y, por lo tanto, no puede confiar en argumentos posicionales.
23.5
Definiciones de propiedades más concisas
El ejemplo que se muestra en la sección anterior funciona, pero sigue siendo bastante detallado;
Si bien esto está del lado de los escritores de clase, todavía parece algo pesado.
Para superar esto, una opción más concisa está disponible desde Python 2.4.
Este enfoque utiliza lo que se conoce como decoradores. Los decoradores representan metadatos
(esa es información sobre su código que el intérprete de Python puede usar para resolver
lo que quieres que haga con ciertas cosas).
Python 2.4 introdujo tres nuevos decoradores @property, @
popular post
Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza
Read MoreTemas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza
Read More• https://docs.python.org/3/ El sitio principal de documentación de Python 3. Contiene tutoriales, referencias de bibliotecas, guías de configuración e instalación, así como Python cómo-tos • https://docs.
Read More