我正在用python创建一个库,它与python2和python3兼容。我决定使用python3中可用的特性(即元类上的__prepare__方法),并在python2中使用一个小黑客(类上的计数器)。0) if PEP3115:else:
# python2不过,我还想为python3测试创建一个不同的python3文件,它将忽略<e
我有两个类,我试图获得两个类的类名。现在,就像我说的,这对一个类有效,但对另一个类不起作用。然后我给他们下定义ita = a()最后,我试着检查类的名称,看看它是否以'f‘开头(看看它是否是一组项的一部分)
if not itemselect.__class__.我知道我可以做不同的事情,而且我的整个
__属性被设置为Meta2,而对于它的父类BaseClass1,__metaclass__属性被设置为Meta1,而Meta1 no Meta2都不是另一个类的子类?在哪种情况下调用父类元类中的方法?在尝试理解项目工作中的元类时,我编写了上面可以找到的代码。(该项目使用Python2.7.3,而且项目中使用的元类看起来很好,因为它们用于向用户提供API,而元类在幕后为用户做了很多事情。