如何访问名称中带点的对象属性

亚光

我正在使用束类将字典转换为对象。

class Bunch(object):
    """ Transform a dict to an object """
    def __init__(self, kwargs):
        self.__dict__.update(kwargs)

问题是,我的键名中带有一个点({'test.this':True})。

因此,当我致电:

spam = Bunch({'test.this':True})
dir(spam)

我有礼物:

['__class__',
 '__delattr__',
...
 '__weakref__',
 'test.this']

但我无法访问它:

print(spam.test.this)
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-7-ea63f60f74ca> in <module>()
----> 1 print(spam.test.this)

AttributeError: 'Bunch' object has no attribute 'test'

我得到了AttributeError。

如何访问此属性?

阿兰·费

您可以使用getattr

>>> getattr(spam, 'test.this')
True

或者,您可以从对象的获取值__dict__使用vars得到spam的字典:

>>> vars(spam)['test.this']
True

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

访问名称中带点的属性

如何访问名称中带点的python argparse参数

从html访问名称上带点的属性

如何访问对象属性的名称?

在Blaze模板中访问对象的属性名称

如何访问属性名称中带有特殊字符的javascript对象的属性

使用对象数组中未知属性名称访问生成的属性

如何从报告中访问报告名称属性?

如何访问在jsp页面中添加的没有属性名称的ModelAndView对象

包中带点的接口名称

如何访问数组中对象的属性

如何从 PHP 中的错误对象访问属性

如何访问猫鼬中的对象属性?

如何访问 Json 对象中的属性类?

如何在javascript中访问对象属性?

如何访问动作脚本中的对象属性

如何从数组中的对象访问属性?

如何访问对象中的动态属性?

如何在React中修复``类型错误:尝试访问对象的属性时无法读取未定义的属性''名称''

如何访问其他对象列表中的lm()对象的名称?

如何访问对象属性?

从扩展符号访问对象时,如何访问Javascript对象的嵌套按名称的属性?

在 JavaScript 中,如何访问对象数组中的对象属性?

属性名称在变量中时,如何获取对象属性值?

您将如何从对象方法中访问对象属性?

如何从javascript访问php对象数组中的php对象属性

如何访问生成的对象列表中的对象属性

如何访问给定索引的对象列表中的对象属性?

如何访问嵌套对象数组中的对象属性?