python – 类,dict,self,init,args?
发布时间:2021-03-30 20:45:30 所属栏目:Python 来源:互联网
导读:class attrdict(dict): def __init__(self, *args, **kwargs): dict.__init__(self, *args, **kwargs) self.__dict__ = selfa = attrdict(x=1, y=2)print a.x, a.yb = attrdict()b.x, b.y
class attrdict(dict):
def __init__(self,*args,**kwargs):
dict.__init__(self,**kwargs)
self.__dict__ = self
a = attrdict(x=1,y=2)
print a.x,a.y
b = attrdict()
b.x,b.y = 1,2
print b.x,b.y
有人可以用文字解释前四行吗?我阅读了关于课堂和方法.但这里似乎很混乱. 解决方法我的一枪一行解释:class attrdict(dict): 该行声明一个类attrdict作为内置dict类的子类. def __init__(self,**kwargs):
dict.__init__(self,**kwargs)
这是您的标准__init__方法.调用dict .__ init __(…)是利用超级 最后一行,self .__ dict__ = self使得你传递给__init__方法的关键字参数(kwargs)可以像属性一样被访问,比如下面代码中的a.x,a.y. 希望这有助于清除你的困惑. (编辑:吉安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 使用带有嵌套查询的python MySQLDB SScursor
- python – 你的字符串’与’string’相同.代码(‘XXX’)
- 从IronPython使用NumPy和SciPy的权威方法
- python – ElementTree find()/ findall()找不到带命名空间
- 错误:输入’for’Python时没有可行的替代方案
- 如何在django python中用json替换simplejson?
- python – 在jinja2中为未定义的属性引发异常
- python – SqlAlchemy在保存之前将UTC DateTime转换为本地时
- python – 处理包含多个字符编码的字符串
- django或playframework
