首页 > TAG信息列表 > class-method

python-使类方法成为默认方法的元类?

有没有一种方法可以编写一个元类,以使默认情况下基于该元类的类中定义的所有方法都是类方法(即不需要@classmethod装饰等)? 谢谢! 编辑:我对Python 2.7.3感兴趣.请原谅.解决方法:像这样(2.7) def m(name, bases, dct): for k, v in dct.items(): if type(v) is type(m):

在python中派生类方法的正确方法是什么?

最近,我遇到了元类调用派生类方法的问题. 例如,我得到一个简单的基类testA,它具有一个类方法do1(a) class testA(object): @classmethod def do1(cls, a): print "in testA:",cls, a 然后,我建立了一个元类,它实际上除了打印cls外什么也不做: class testMetaA(t

Python类方法抛出AttributeError

我在让类方法在Flask中运行时遇到问题. 在models / User.py中: from mongoengine import * class User(Document): first_name = StringField() last_name = StringField() ... def __init__(self, arg1, arg2, ...): self.first_name = arg1 self.last_name = a

如何使用python-decorator包来装饰类方法?

我有一个装饰器,我想用它来装饰类方法.在下面的示例中,@mydec装饰器可以正常工作,但是在使用help()或pydoc时,它不会保留函数签名.为了解决这个问题,我研究了使用@decorator python-decorator包: import functools import decorator @decorator.decorator def mydec(func): @

Python Noob无法使类方法起作用

我的客户类中有一个名为save_from_row()的方法.看起来像这样: @classmethod def save_from_row(row): c = Customer() c.name = row.value('customer', 'name') c.customer_number = row.value('customer', 'number') c.social_security

Python:如何从同一个类的类方法中调用实例方法

我有一个课程如下: class MyClass(object): int = None def __init__(self, *args, **kwargs): for k, v in kwargs.iteritems(): setattr(self, k, v) def get_params(self): return {'int': random.randint(0, 10)} @clas

Python – 我可以以编程方式从类实例中修饰类方法吗?

我有一个对象层次结构,其中几乎所有方法都是类方法.它看起来如下: class ParentObject(object): def __init__(self): pass @classmethod def smile_warmly(cls, the_method): def wrapper(kls, *args, **kwargs): print "-smile_warmly

python – 尝试调用classmethods的代码中的各种错误

我有这个代码: class SomeClass: @classmethod def func1(cls,arg1): #---Do Something--- @classmethod def func2(cls,arg1): #---Do Something--- # A 'function map' that has function name as its keys and the above functi

python – 如何创建类属性?

在python中,我可以使用@classmethod装饰器向类添加方法.是否有类似的装饰器向类中添加属性?我可以更好地展示我在说什么. class Example(object): the_I = 10 def __init__( self ): self.an_i = 20 @property def i( self ): return self.an_i def i

python – 工厂调用备用构造函数(classmethod)

我正在努力找到一种方法来使用定义为@classmethod的替代构造函数来创建类Factory(我使用Factory_boy版本2.11.1和Python 3). 因此,假设我们有一个用于构建具有默认构造函数的2D点对象的类,另外还有2个: class Point: def __init__(self, x, y): self.x = x se

javascript – 如何测试React组件上定义为箭头函数(类属性)的组件方法?

我可以通过使用spies和Component.prototype来测试类方法.但是,我的许多类方法都是类属性,因为我需要使用它(对于this.setState等),并且因为构造函数中的绑定非常繁琐且看起来很丑,所以在我看来使用箭头函数要好得多.我使用类属性构建的组件在浏览器中工作,所以我知道我的babel配置

如何从Python中重写的@classmethod调用父类的@classmethod?

假设我有一堂课 class SimpleGenerator(object): @classmethod def get_description(cls): return cls.name class AdvancedGenerator(SimpleGenerator): @classmethod def get_description(cls): desc = SimpleGenerator.get_description() # t

python – 使用两个不同的decorator实现来装饰所有类方法的Metaclass

我写的这个元类装饰器应用的装饰器的实现有问题: def decorateAll(decorator): class MetaClassDecorator(type): def __new__(meta, classname, supers, classdict): for name, elem in classdict.items(): if type(elem) is FunctionTy

python – 类对象上的getattr

class A: def foo(self): print "foo()" getattr(A, foo) # True A.foo() # error getattr(A(), foo) # True A().foo() # prints "foo()" 话虽这么说,这是我的问题: 我希望将测试用例元信息存储为Test Case类对象本身的属性,而不是它们的实例. 我有一个要提取的属

python – 如何包装(猴子补丁)@classmethod

我想修补一个单一的类方法,保持旧的功能.考虑一下我的代码来获取想法.这是我的代码(非常合成的例子). #!/usr/bin/env python class A: @classmethod def foo(kls, param): print 'A.foo called, param is ' + param def bar(self, param): print 'A.bar called,

如何将起始序列号传递给Django factory_boy工厂?

factory_boy默认为1表示序列.如何传入一个数字作为不同的起始号码呢?我可以继承_setup_next_sequence()方法,但是如何给它一个变量来使用呢? # File: models.py from django.db import models class Book(models.Model): title = models.CharField(max_length=100) # File: fa

python – 创建可以看到当前类方法的装饰器

你能在类中创建一个装饰器来查看类方法和变量吗? 这里的装饰者没有看到:self.longcondition() class Foo: def __init__(self, name): self.name = name # decorator that will see the self.longcondition ??? class canRun(object): def __init_