Tag: MAGIC-METHODS
Al igual que el método __init__(), ¿se llaman automáticamente las demás funciones especiales cuando creo un objeto? Echa un vistazo a esta clase simple como ejemplo: class Punto: def __init__(self, x = 0, y = 0): self.x = x self.y = y def __str__(self): return “({0},{1})”.format(self.x,self.y) ¿Se llama automáticamente el . . . Read more
¿Python 2 y 3 comparten todos los mismos métodos mágicos (con los mismos nombres)? Si no es así, ¿alguien sabe de una práctica lista completa de todos los métodos mágicos en Python 3?
Aquí he definido la clase inmutable str. En el método new estoy cambiando los valores de las instancias como “hello” a mayúsculas. ¿Por qué deberíamos hacerlo usando new cuando podemos definir upper en init? “` class Upperstr(str): def <strong>new</strong>(cls,value=""): print(cls) print(value) return str.<strong>new</strong>(cls,value.upper()) <pre><code># def __init__(self,m1): # self.m1 = m1.upper() . . . Read more
El nombre de un atributo se puede solicitar con name. Sin embargo, también quiero preguntar sobre el nombre de la clase: class Test: slots = [‘a’, ‘b’] print(Test.a.name) # → ‘a’ pero quería ‘Test.a’ o solo la clase ‘Test’