Índice de contenido
Lo que produce el siguiente resultado: en lugar de un mensaje de error getattr: método_ficticio estudiante.dummy_method(): predeterminado 28.6 Búsqueda de atributos de intercepción También es posible interceptar siempre las búsquedas de atributos usando la nación de puntos (por ejemplo, estudiante.nombre) implementando el método getattribute(). Este siempre se llamará al método en lugar de buscar el atributo en los objetos diccionario. El getattr() método voluntad solo ser llamado si un Se genera AttributeError o el método getattribute() explícitamente llama al método getattr(). Por lo tanto, el método getattribute() debería devolver un valor de atributo (que puede ser un valor predeterminado) o generar un AttributeError si corresponde. Es importante evitar implementar código que recursivamente se llamará a sí mismo (por ejemplo, llamar a self.name dentro de getattribute() resultará en un llamada recursiva a getattribute()!). Para evitar esto, la implementación ción del método debe acceder al directorio dict o llamar a la base Clases método getattribute(). A continuación se proporciona un ejemplo de un método getattribute() simple que registra la llamada a un método y luego pasa la invocación a la clase base implementación: estudiante de clase: cuenta = 0 def init(uno mismo, nombre): self.nombre = nombre Student.count += 1
Método llamado si el atributo es desconocido
def getattr(uno mismo, atributo): imprimir (’getattr:’, atributo) devolver ‘predeterminado’
Siempre se llamará al método cuando un atributo
se accede, solo se llamará a getattr si
lo hace explícitamente o si se genera un AttributeError
def getattribute(yo, nombre): imprimir(’obteneratributo()’, nombre) devolver objeto.obteneratributo(yo, nombre) def my_default(auto): devolver ‘predeterminado’ 28.5 Manejo de invocaciones de métodos desconocidos 333
popular post
El modelo AR de series temporales univariadas
Resumen: En esta entrada, descubrirá el modelo AR: El modelo autorregresivo.
Leer másEvaluación de modelos para pronosticar
Resumen: Al desarrollar modelos de aprendizaje automático, generalmente se comparan varios modelos durante la fase de construcción.
Leer másModelos para pronosticar
Resumen: El pronóstico, traducido groseramente como la tarea de predecir el futuro, ha estado presente en la sociedad humana durante siglos.
Leer más