Python-getattr和串联

Python-getattr和串联,第1张

Python-getattr和串联

因为没有属性

A.bar
foo
。属性
bar
是所指向的对象的一部分
A
,是的属性
foo
。你需要

getattr(foo.A, "bar")

要么

getattr(getattr(foo, 'A'), 'bar')

访问深层属性的通用代码是在点上拆分,直到找到最后一部分为止(我是从内存写的,未经测试):

def getattr_deep(start, attr):    obj = start    for part in attr.split('.'):        obj = getattr(obj, part)    return objgetattr_deep(foo, 'A.bar')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5650541.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存