一、字典取值:可以通过字典的键来获取其对应的值:
(1)字典无效键:当取字典键值时,如果键并不存在于字典中,该键无效,计算机会返回错误。population = {"广东":111690000,"山东":100058300,"河南":95591300,"四川":95591300,"江苏":80293000} print(population["四川"]) # 输出:95591300
(2)try/except 取值:如果字典中没有相应的键,还可以用try/except的方法来捕获 KeyError 的出现。my_dict = {"a":1,"b":2,"c":3,"d":4} print(my_dict["e"]) # KeyError: ‘e‘
二、.get() Python的字典有 .get() 方法,它根据键来取字典中相应的值。如果键不存在于字典中,.get() 默认返回 None。my_dict = {"a":1,"d":4} try: print(my_dict["e"]) except KeyError: print("没有这个键") # 输出:没有这个键
当键不存在于字典中时,我们也可以手动设置返回值:zoo = {‘大象‘: 3,‘金丝猴‘: 4,‘羊驼‘: 2,‘海獭‘: 2,‘大熊猫‘: 3,‘长颈鹿‘: 3,‘狼‘: 8} print(zoo.get(‘大象‘)) # 输出: 3 print(zoo.get(‘海豚‘)) # 输出: None
三、删除字典键:可以用 .pop() 方法来删除字典中的键及其值。zoo = {‘大象‘: 3,‘狼‘: 8} print(zoo.get(‘海豚‘,"没有海豚")) # 输出:没有海豚
示例中,zoo 中的键"大象" 及其值 3 被删除。如果需要删除的键不在字典之中,可以在 .pop() 方法中加上对应的参数,当键不存在时,.pop() 返回该参数,具体见:zoo = {‘大象‘: 3,‘狼‘: 8} print(zoo.pop("大象")) # 输出:3 print(zoo) # 输出:{‘金丝猴‘: 4,‘羊驼‘: 2,‘海獭‘: 2,‘大熊猫‘: 3,‘长颈鹿‘: 3,‘狼‘: 8}
四、获取字典所有的键:我们可以用两种方法获得字典中所有的键。第一种方法:list(目标字典):zoo = {‘大象‘: 3,‘狼‘: 8} print(zoo.pop("海豚","没有此动物")) # 输出:没有此动物 print(zoo) # 输出:{‘大象‘: 3,‘金丝猴‘: 4,‘狼‘: 8}
第二种方法,我们还可以用 .keys() 方法来获得字典中的键:zoo = {‘大象‘: 3,‘狼‘: 8} print(list(zoo)) # [‘大象‘,‘金丝猴‘,‘羊驼‘,‘海獭‘,‘大熊猫‘,‘长颈鹿‘,‘狼‘]
zoo = {‘大象‘: 3,‘狼‘: 8} for animal in zoo.keys(): print(animal) # 输出: 大象 金丝猴 羊驼 海獭 大熊猫 长颈鹿 狼
五、获得字典所有的值:可以用 .values() 方法获得字典中所有的值:
六、获得字典中所有的键值对:可以用 .items() 获得 字典中的所有键值对zoo = {‘大象‘: 3,‘狼‘: 8} for num in zoo.values(): print(num) # 输出: 3 4 2 2 3 3 8
oo = {‘大象‘: 3,‘狼‘: 8} for animal,number in zoo.items(): print(animal + "的数量为:" + str(number)) # 输出: 大象的数量为:3 金丝猴的数量为:4 羊驼的数量为:2 海獭的数量为:2 大熊猫的数量为:3 长颈鹿的数量为:3 狼的数量为:8