[英]Python - Access object attributes as in a dictionary
>>> my_object.name = 'stuff'
>>> my_str = 'name'
>>> my_object[my_str] # won't work because it's not a dictionary :)
如何访问my_str
定义的my_object
的字段?
getattr(my_object, my_str)
或者,如果您不确定该名称是否作为键存在并且想要提供后备而不是抛出异常:
getattr(my_object, my_str, "Could not find anything")
>>> myobject.__dict__[my_str]
'stuff'
一般来说,你不能使用__dict__
方法。 永远有效的是
getattr(myobject, my_str)
如果您想要类似 dict 的访问,只需定义一个具有重载索引运算符的类。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.