django,从不存在的kwarg键的python keyerror - 我如何避免这种情况?
问题描述:
,如果我有一些代码:django,从不存在的kwarg键的python keyerror - 我如何避免这种情况?
variableA = self.kwarg['maybe']
现在,“也许”是有时,有时没有。我真的不在乎它是否不存在 - 我检查变量A是否为无线 - 所以我如何避免当它不在那里时弹出的那么令人讨厌的“keyerror”?
我只是想让django让我设置一个变量为None!
更新:谢谢大家!
答
我从来没有使用Django的,但如果self.kwarg是一个字典,你可以使用get()函数返回无(或可选默认值)不在字典中的元素:
d = dict()
d.get("abc") #-> None
d.get("abc", "default") #-> "default"
答
http://docs.python.org/library/stdtypes.html#dict.setdefault
setdefault(key[, default])
如果key
在字典中,返回其值。如果不是,则插入key
, 值为default
并返回default
。default
默认为None
。
应用到你的代码:
variableA = self.kwarg.setdefault('maybe')
# -> variableA is now None