Python 入门之元组与字典(二)
@
第2
关:字典的使用:这份菜单可以修改
字典是 Python 最强大的数据类型之一,通过键-值对的方式建立数据对象之间的映射关系。字典的每个键-值对用冒号:分割,每个键-值对间用逗号,分隔开,字典则包含在{}中。列表格式如下:
d = { key1 : value1, key2 : value2 }
每个键都与一个值相关联,我们可以使用键来访问与之相关联的值。与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何 Python 对象用作字典中的值。
访问字典中的值
要获取与键相关联的值,可依次指定字典名和放在方括号内的键,如下所示:
# 创建并初始化menu字典 menu = { fish:40, pork:30, potato:15, noodles:10} # 获取并返回menu字典中键fish键对应的值 print(menu[fish])
输出结果:
40
添加键-值对
字典是一种动态数据结构,可随时在字典中添加键-值对。要添加键-值对时,可依次指定字典名、键和键对应的值。下面在字典menu中添加两道菜的菜名和价格:
# 创建并初始化menu字典 menu = { fish:40, pork:30, potato:15, noodles:10} # 向menu字典中添加菜名和价格 menu[juice] = 12 menu[egg] = 5 # 输出新的menu print(menu)
输出结果:
{ fish: 40,pork: 30,potato: 15,noodles: 10, juice: 12,egg: 5}
新的menu字典包含6个键-值对,新增加的两个键-值对(菜名和对应价格)添加在了原有键-值对的后面。
注意:字典中键-值对的排列顺序和添加顺序没有必然联系。Python 不关心字典中键-值对的排列顺序,而只关心键与值的对应关系。同理,字典和列表一样,可以先创建一个空字典,然后可以不断向里面添加新的键-值对。
修改字典中的值
字典和列表一样,里面的值都是可以修改的。要修改字典中的值,可直接指定字典中的键所对应的新值。例如,将menu中的fish价格改为50:
# 创建并初始化menu字典 menu = { fish:40, pork:30, potato:15, noodles:10} # 修改menu字典中菜fish的价格 menu[fish] = 50 # 打印输出新的menu print(menu)
输出结果:
{ fish: 50, pork: 30, potato: 15, noodles: 10}
删除键-值对
我们可以通过del方法删除字典中不需要的键-值对。使用del方法时,要指定字典名和要删除的键。例如,在menu菜单中删除键noodles和它的值:
# 创建并初始化menu字典 menu = { fish:40, pork:30, potato:15, noodles:10} # 删除noodles键值对 del menu[noodles] # 打印输出新的menu print(menu)
输出结果:
{ fish: 40, pork: 30, potato: 15}
如果您想了解更多有关字典使用的知识,请参考:【美】 Eric Matthes 著《 Python 编程——从入门到实践》第六章。
# coding=utf-8 # 创建并初始化menu_dict字典 menu_dict = { } while True: try: food = input() price = int(input()) menu_dict[food]= price except: break # 请在此添加代码,实现对menu_dict的添加、查找、修改等操作,并打印输出相应的值 1. 向menu_dict字典中添加一道菜名lamb,它的价格是50; 2. 获取menu_dict字典中的fish的价格并打印出来; 3. 将menu_dict字典中的fish的价格改为100; 4. 删除menu_dict字典中noodles这道菜; 5. 输出新的menu_dict菜单。 ########## Begin ########## menu_dict[lamb] = 50 print(menu_dict[fish]) menu_dict[fish] = 100 del menu_dict[noodles] print(menu_dict) ########## End ##########