当你使用一个不存在的键(key)去访问一个python字典(dict)时,会触发一个KeyError异常。这是Python提供的一种机制,用于指示你正在尝试访问一个字典中不存在的键。
以下是一个简单的示例,演示了当使用一个不存在的键去访问字典时会发生的情况:
my_dict = {"apple": 3, "banana": 6, "orange": 2}print(my_dict["apple"]) # 输出:3print(my_dict["grape"]) # 引发 KeyError 异常
在上面的代码中,my_dict是一个包含一些水果及其数量的字典。第一个打印语句使用一个存在的键"apple"去访问字典中的值,因此会正常输出3。然而,第二个打印语句使用一个不存在的键"grape",这将引发一个KeyError异常。
为了避免出现KeyError异常,你可以使用get()方法来访问字典中的值。get()方法接受一个键作为参数,并返回对应的值。如果键不存在于字典中,get()方法会返回一个默认值(默认为None,或者你可以指定自己的默认值)而不是引发异常。以下是使用get()方法的示例:
my_dict = {"apple": 3, "banana": 6, "orange": 2}print(my_dict.get("apple")) # 输出:3print(my_dict.get("grape")) # 输出:Noneprint(my_dict.get("grape", 0)) # 输出:0
上述代码中的第一个和第二个print语句与之前相同,但是使用了get()方法。第三个print语句使用了get()方法,并提供了一个默认值0。因为"grape"键不存在于字典中,所以get()方法返回了默认值0,而不是引发异常。