概述
Digression Start
我刚学会了Python中的元类.我不认为python的创建者希望每个人都使用它们.我的意思是名字,在大多数情况下可能不是一个类的元类足以让大多数人远离这个概念!
Digression end
关于我的问题.我编写了这个简单的元类来为模块中创建的所有类添加默认的文档字符串.但它不起作用:
def metest(cls,name,bases,dict): cls.setattr(cls,'__doc__',"""Default Doc""") return type(cls,(),{}) __Metaclass__=metest class test(object): pass print test.__doc__ t=@R_419_1603@ print t.__doc__
输出:
None None
我究竟做错了什么?
def metest(name,dict): print name,dict dict['__doc__'] = """New Doc""" cls = type(name+"_Meta",dict) return cls class Test(object): "Old doc" __Metaclass__ = metest print Test print Test.__doc__ t = @R_419_1603@ print t.__doc__
>使用“元类”.>更正“类创建功能”的签名. cls将由我们创建.>为了区分,请使用“旧”和“新”文档字符串.
总结
以上是编程之家为你收集整理的这个简单的python元类有什么问题?全部内容,希望文章能够帮你解决这个简单的python元类有什么问题?所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧