Articles of clase

entendiendo clases en python 2

Completo progtwigdor novato aquí. He estado revisando los libros de Zed Learn Python the Hard Way durante las últimas semanas para cubrir los conceptos básicos de la progtwigción, y me he encontrado en un punto muerto. Más o menos he estado siguiendo todo lo que me ha estado lanzando, pero una vez que me encontré […]

Importar dinámicamente clase por nombre para acceso estático

Estoy generando nombres de clase dinámicamente y luego quiero importar esa clase por su nombre para acceder a un método estático. Esta es la clase para importar en “the_module.py”: class ToImport(object): @classmethod def initialize(cls, parameter): print parameter Según una publicación del blog, esto es lo que he llegado: theModule = __import__(“the_module”) toImport = getattr(theModule, “ToImport”) […]

¿Método especial para que un objeto anule la expansión de la tupla?

Daré un ejemplo del problema en cuestión, en caso de que el título no fuera lo suficientemente claro. Digamos que tengo un class Point(object) que representa coordenadas 2d. ¿Es posible crear un método “mágico” que permita lo siguiente? x, y = point Tal vez algunos hacks con iteradores?

Cambiar atributo después de cada objeto que llama

Estoy tratando de averiguar cómo cambiar algún valor después de cada llamada del objeto. Pienso que la función call () se ejecuta después de cada llamada. Esta debe ser una clase de contador simple que disminuye el atributo de valor después de ser llamado. class counter(): def __init__(self,value): self.value = value def __call__(self): self.value -= […]

_transform () toma 2 argumentos posicionales pero 3 fueron dados

Intento construir una tubería con transformación variable Y hago lo siguiente import numpy as np import pandas as pd import sklearn from sklearn import linear_model from sklearn.base import BaseEstimator, TransformerMixin from sklearn.pipeline import Pipeline Marco de datos df = pd.DataFrame({‘y’: [4,5,6], ‘a’:[3,2,3], ‘b’ : [2,3,4]}) Intento conseguir una nueva variable para predecir. class Complex(): def […]

¿Por qué no se pueden usar ranuras no vacías con subclases int, tuple, bytes?

Esto está documentado explícitamente en el manual de referencia: Los __slots__ no vacíos no funcionan para las clases derivadas de tipos incorporados de “longitud variable”, como int, bytes y tuple. Y es el caso, escribiendo: class MyInt(int): slots = ‘spam’, resultados en: TypeError: nonempty __slots__ not supported for subtype of ‘int’ ¿Por qué esto es […]

Respecto a Python MRO y cómo se comporta super ()

Hoy intentaba descubrir cómo funciona __mro__ y super en python, encontré algo interesante y extraño para mí, porque obtuve algo que no es algo que entendí después de leer __mro__ . Aquí están los fragmentos de código. Fragmentos de código 1: #!/usr/bin/pyhon class A(object): def test(self): return ‘A’ class B(A): def test(self): return ‘B to […]

Python, llama a una función de clase de otra clase

¿Puede alguien ayudarme (noob) a llamar a la función de difusión de la clase BroadcastServerFactory en el proceso de clase , según el código adjunto? He probado muchos métodos para llamar a una función de otra clase, pero no tengo solución import time, sys from apscheduler.scheduler import Scheduler import threading import socket from twisted.internet import […]

Espacios de nombres dentro de una clase de Python

Tengo esto: class MyClass: “””A simple example class””” i = 12345 def f(self): print i # self.i will work just fine return ‘hello world’ Cuando lo hago: >>> x = MyClass() >>> >>> xf() Me sale un error, como se esperaba. Mi pregunta es: ¿Por qué me sale el error? ¿Por qué no hay espacio […]

llamar a la clase desde un módulo externo causa NameError, en IDLE funciona bien

Tengo el siguiente código en un módulo llamado code_database.py class Entry(): def enter_data(self): self.title = input(‘enter a title: ‘) print(‘enter the code, press ctrl-d to end: ‘) self.code = sys.stdin.readlines() self.tags = input(‘enter tags: ‘) def save_data(self): with open(‘entry.pickle2’, ‘ab’) as f: pickle.dump(self, f) en inactivo los métodos definidos por la clase funcionan bien: >>> […]