# 3种for in 区别 # for item in list: # item 为列表元素 # for i in range(len(list)): # i 为列表索引 # for key in dict: # key 为字典的键 # 建议餐厅录入系统 # 创建餐厅列表 list_restaurant = [] # 餐厅属性别名字典 dict_alias = { "city": "餐厅城市", "name": "餐厅名字", "comment": "餐厅评论" } while True: print("1键录入餐厅信息") print("2键显示餐厅信息") print("3键删除餐厅信息") print("4键修改餐厅信息") number = input("请选择功能菜单") if number == "1": # 录入餐厅信息 # 将录入的信息添加到餐厅信息字典对应的属性中 dict_restaurant = { "city": input("请输入" + dict_alias["city"]), "name": input("请输入" + dict_alias["name"]), "comment": int(input("请输入" + dict_alias["comment"])) } # 将餐厅信息字典添加到餐厅列表中 list_restaurant.append(dict_restaurant) elif number == "2": # 显示餐厅信息 # 遍历餐厅列表,将所有的餐厅信息展示出来 for item in list_restaurant: print(dict_alias["city"] + ":" + item["city"] + "," + dict_alias["name"] + ":" + item["name"] + "," + dict_alias["comment"] + ":" + str(item["comment"])) elif number == "3": # 删除餐厅信息 name = input("请输入要删除的餐厅名字") # 遍历餐厅列表 for i in range(len(list_restaurant)): # 从餐厅列表中餐厅信息字典的餐厅名字name属性判断要从餐厅列表中要删除的餐厅 if list_restaurant[i]["name"] == name: del list_restaurant[i] print("餐厅名字为" + name + "已从系统中删除") break # 完成删除后用break跳出循环 elif number == "4": # 修改餐厅信息 if len(list_restaurant) == 0: # 餐厅列表为0,系统中还没餐厅信息 print("系统还没录入有餐厅") else: name = input("请输入要修改的餐厅") # 遍历餐厅列表 for item in list_restaurant: # 从餐厅列表中餐厅信息字典的餐厅名字name属性判断要修改的餐厅 if item["name"] == name: count = 1 list_key = [] # 餐厅信息字典的键列表 # 遍历餐厅信息字典向用户提示修改步骤 for key in item: print(str(count) + "键修改" + dict_alias[key]) list_key.append(key) count += 1 modify_num = int(input("请选择要修改的数据")) # 用户输入的修改编号 new = input("请输入修改后的数据") modify_key = list_key[modify_num - 1] # 修改编号比对应键列表的键索引大1 item[modify_key] = new # 修改信息 没做类型判断,如果修改餐厅评论,餐厅评论的类型会为str,餐厅评论的类型应为int break
标签:name,python,练习,list,item,dict,key,餐厅 From: https://www.cnblogs.com/xmgcool/p/16926108.html