preloader

1 de enero de 1 | 2 minutos de lectura
Índice de contenido

28.2.1 ¿Cómo funciona el parche de mono? Python es un lenguaje dinámico que permite que la definición de un tipo cambie en tiempo de ejecución Como los métodos en los objetos son, en esencia, solo otro atributo de una clase, aunque uno que se puede ejecutar, es posible agregar nueva funcionalidad a una clase por definiendo nuevos atributos que contendrán referencias al nuevo comportamiento. 28.2.2 Ejemplo de parches de mono La siguiente clase, Bag, implementa un método de inicialización init(), str() y el método getitem() utilizados para admitir el acceso indexado a un tipo de contenedor (o colección). bolsa de clase(): def init(uno mismo): self.datos = [‘a’, ‘b’, ‘c’] def getitem(self, pos): devolver self.data[pos] def str(uno mismo): devuelve ‘Bolsa(’ + str(self.data) + ‘)’ b = Bolsa() imprimir (b) Esto crea un objeto Bolsa e imprime el contenido de la Bolsa: Bolsa([‘a’, ‘b’, ‘c’]) Sin embargo, si tratamos de ejecutar imprimir (len (b)) Obtendremos un error de tiempo de ejecución: Rastreo (llamadas recientes más última): Archivo “Bolsa.py”, línea 12, en <módulo> imprimir (len (b)) TypeError: el objeto de tipo ‘Bag’ no tiene len() Esto se debe a que la función len() espera que el objeto que se le pasa implemente Mencione el método len() que se utilizará para obtener su longitud. En este caso el class Bag no implementa este método. 326 28 Monkey Patching y búsqueda de atributos

comments powered by Disqus

popular post

El modelo AR de series temporales univariadas

Resumen: En esta entrada, descubrirá el modelo AR: El modelo autorregresivo.

Leer más

Evaluació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ás

Modelos 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