假设我们有一个包含两个键和已知值的字典:
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
。
答案 0 :(得分:1)
Python词典有一个方法.get()
:
new_object = dictionary.get('first_name')
它接受一个键并返回值(如果设置)或默认值(除非另有说明,否则为None
)。