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并返回defaultdefault默认为None

应用到你的代码:

variableA = self.kwarg.setdefault('maybe') 
# -> variableA is now None