gpt4 book ai didi

python - 有什么方法可以在python中使用get with object而不是dict

转载 作者:太空宇宙 更新时间:2023-11-04 08:07:26 26 4
gpt4 key购买 nike

如果我有字典,这很好用

value = d.get(key, "empty")

但是如果 d 是我的 django 模型对象 那么我得到这个

object has no attribute 'get'

我该如何解决。如果 key 不存在,我希望具有与 dict 相同的行为以变空

最佳答案

使用getattr():

value = getattr(d, key, "empty")

另一种选择是直接访问对象的__dict__:

value = d.__dict__.get(key, "empty")

但我建议使用getattr()

更新:请注意,getattr(some_dict, key)some_dict.get(key) 不同。 getattr() 获取对象的属性,但不是字典的值。

关于python - 有什么方法可以在python中使用get with object而不是dict,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28801107/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com