use*_*546 1 python django dictionary
如果我有字典,这工作正常
value = d.get(key, "empty")
但如果d
是我的django model object
话我会得到这个
对象没有属性'get'
我该如何解决这个问题.如果键不存在,我希望像dict一样的行为变空
用途getattr()
:
value = getattr(d, key, "empty")
Run Code Online (Sandbox Code Playgroud)
另一种选择是直接访问对象__dict__
:
value = d.__dict__.get(key, "empty")
Run Code Online (Sandbox Code Playgroud)
但我建议使用getattr()
.
更新:注意getattr(some_dict, key)
与some_dict.get(key)
.不一样. getattr()
获取对象的属性,但不获取dict的值.
归档时间: |
|
查看次数: |
62 次 |
最近记录: |