En Python, ¿qué son las metaclases y para qué las
En Python, ¿qué son las metaclases y para qué las
¿Cómo puedo encontrar un nombre de clase que haya creado una instancia de un objeto en Python si la función de la que estoy haciendo esto es la clase base de la cual se deriva la clase de la instancia? Estaba pensando que tal vez el módulo de inspección podría haberme ayudado aquí, pero no parece...
Entonces, lo que estoy buscando aquí es algo así como la función print_r de PHP . Esto es para que pueda depurar mis scripts al ver cuál es el estado del objeto en
Dada la función Python: def a_method(arg1, arg2): pass ¿Cómo puedo extraer el número y los nombres de los argumentos? Es decir, dado que tengo una referencia func, quiero func.[something]que regrese ("arg1", "arg2"). El escenario de uso para esto es que tengo un decorador, y deseo usar los...
Para fines de registro, quiero recuperar el nombre de clase totalmente calificado de un objeto Python. (Con totalmente calificado me refiero al nombre de la clase, incluido el paquete y el nombre del módulo). Lo sé x.__class__.__name__, pero ¿hay un método simple para obtener el paquete y el...
Estoy tratando de implementar la funcionalidad de corte para una clase que estoy creando y que crea una representación vectorial. Tengo este código hasta ahora, que creo que implementará correctamente el segmento, pero cada vez que hago una llamada como v[4]donde v es un vector, python devuelve un...
Tengo una clase en la que quiero anular el __eq__()operador. Parece tener sentido que debería reemplazar el __ne__()operador así, pero ¿tiene sentido para implementar __ne__basado en __eq__como tal? class A: def __eq__(self, other): return self.value == other.value def __ne__(self, other):...
¿Cómo puedo obtener la clase que definió un método en Python? Me gustaría que el siguiente ejemplo imprima " __main__.FooClass": class FooClass: def foo_method(self): print "foo" class BarClass(FooClass): pass bar = BarClass() print get_class_that_defined_method(bar.foo_method)...
Quiero poder crear una clase (en Python) que una vez inicializada con __init__, no acepta nuevos atributos, pero acepta modificaciones de atributos existentes. Hay varias formas pirateadas que puedo ver para hacer esto, por ejemplo, tener un __setattr__método como def __setattr__(self,...