如果值不存在,则分配无

时间:2018-01-06 02:44:12

标签: python dictionary

假设我们有一个包含两个键和已知值的字典:

dictionary = {'first_name': 'Jennifer', 'last_name': 'Lawrence'}

但是,由于我从API中检索不能保证返回所有密钥的信息,因此我必须测试密钥是否存在。

如果我想将此键"first_name"的值赋给变量new_object,我打算使用以下表达式:

new_object = dictionary['first_name'] **or None**

但是,如果键'first_name'不在字典中,我会收到一个键错误。显然,似乎我不能在这里使用Swift的选项原则。

Python是否支持任何类型的内联测试来验证变量是否存在/被声明,如果不是,则为新变量分配值None?在上面的情况中,使用仅包含密钥'last_name'的字典会导致将值None分配给new_object

1 个答案:

答案 0 :(得分:1)

Python词典有一个方法.get()

new_object = dictionary.get('first_name')

它接受一个键并返回值(如果设置)或默认值(除非另有说明,否则为None)。