Articles of class

TypeError: no se puede convertir el objeto ‘int’ a str implícitamente al crear instancias de clase en el bucle for

Recibo el error “TypeError: No se puede convertir el objeto ‘int’ en str implícitamente” cuando se usa un bucle for para crear instancias de clase. Soy bastante nuevo en progtwigción y no he visto este error antes class Player(object): properties = [] def __init__( self, name, wealth, player_number): self.name = name self.wealth = wealth self.player_number […]

Python – yo, no yo y cls

Otra pregunta sobre para qué es el ‘yo’, qué sucede si no usas el ‘yo’ y para qué sirve ‘cls’. “Hice mi tarea”, solo quiero asegurarme de que la tengo toda. self : para acceder a un atributo de un objeto, debe prefijar el nombre del atributo con el nombre del objeto ( objname.attributename ). […]

Acceda al archivo .mat que contiene las clases de matlab en python

Tengo un archivo .mat generado desde matlab 2012b. Contiene una variable con una clase matlab definida por el usuario. Al cargar el archivo con scipy.io.loadmat en Python 3.3, obtengo lo siguiente: mat=scipy.io.loadmat(‘D:\test.mat’) mat {‘__header__’: b’MATLAB 5.0 MAT-file, Platform: PCWIN64, Created on: Fri Feb 22 15:26:28 2013′, ‘__function_workspace__’: array([[ 0, 1, 73, …, 0, 0, 0]], […]

¿Es malo almacenar todas las instancias de una clase en un campo de clase?

Me preguntaba si hay algo malo (desde un punto de vista de POO) al hacer algo como esto: class Foobar: foobars = {} def __init__(self, name, something): self.name = name self.something = something Foobar.foobars[name] = self Foobar(‘first’, 42) Foobar(‘second’, 77) for name in Foobar.foobars: print name, Foobar.foobars[name] EDITAR : este es el código real que […]

python self-less

esto funciona de la manera deseada: class d: def __init__(self,arg): self.a = arg def p(self): print “a= “,self.a x = d(1) y = d(2) xp() yp() flexible a= 1 a= 2 He intentado eliminar los “yo” y usar una statement global en __init__ class d: def __init__(self,arg): global a a = arg def p(self): print […]

¿Cómo puedo decorar un método de instancia con una clase de decorador?

Considere este pequeño ejemplo: import datetime as dt class Timed(object): def __init__(self, f): self.func = f def __call__(self, *args, **kwargs): start = dt.datetime.now() ret = self.func(*args, **kwargs) time = dt.datetime.now() – start ret[“time”] = time return ret class Test(object): def __init__(self): super(Test, self).__init__() @Timed def decorated(self, *args, **kwargs): print(self) print(args) print(kwargs) return dict() def call_deco(self): […]

¿Cómo devolver un valor de __init__ en Python?

Tengo una clase con una función __init__ . ¿Cómo puedo devolver un valor entero de esta función cuando se crea un objeto? Escribí un progtwig, donde __init__ realiza el análisis de la línea de comandos y necesito tener un valor establecido. ¿Está bien configurarlo en una variable global y usarlo en otras funciones miembro? Si […]

Resolver error de importación circular en python

Posible duplicado: Importaciones circulares (o cíclicas) en Python Tengo la clase B que importa y crea instancias de la clase A. La clase A necesita una referencia a B en su contructor y, por lo tanto, incluye B. from a import A class B: def __init__(self): self.a = A() from b import B class A: […]

¿Por qué acceder a la variable de clase dentro de la clase necesita “self” en Python?

Posible duplicado: Python ‘auto’ explicado Estoy aprendiendo Python y tengo una pregunta, más teórica que práctica, sobre el acceso a las variables de clase del método de esta clase. Por ejemplo tenemos: class ExampleClass: x = 123 def example_method(self): print(self.x) ¿Por qué es necesariamente escribir exactamente self.x , no solo x ? x pertenece al […]

Python attributeError en __del__

Tengo un objeto de clase python y quiero asignar el valor de una variable de clase class Groupclass(Workerclass): “””worker class””” count = 0 def __init__(self): “””initialize time””” Groupclass.count += 1 self.membercount = 0; self.members = [] def __del__(self): “””delte a worker data””” Groupclass.count -= 1 if __name__ == “__main__”: group1 = Groupclass() Este resultado de […]