定义语法:
{key1:value1,key2:value2,......}
增加:
Dict1[key]=value
删除:
Dict1.pop(key)
Del dict1[key]
修改:
Dict1[key]=value
查询:
Keys()
Values()
Items()
定义:
# 初识字典dict countries={'CN':'china','JP':'Japan','CA':'Canada','JP':124} # <class 'dict'> print(type(countries)) # {'CN': 'china', 'JP': 124, 'CA': 'Canada'} print(countries) student={'name':'zs','age':18,'id':'1001','sex':'男','score':99} # 字典dict相比于列表更能够清晰的表明数据与数据之间的关系 # student1=['ls',20,'男',88,'1001'] print("%s的分数:%d"%(student['name'],student['score'])) # 遍历 # 通过key进行变量 all_keys=countries.keys() for key in all_keys: print('%s=%s'%(key,countries[key]),end='\t') print() # 直接获取value for val in countries.values(): print(val,end='\t') print() # 直接获取字典的key、value for key,val in countries.items(): print('%s=%s'%(key,val),end='\t') print()
增删改查:
# 增删改查 students={'ww':88,"mazi":99} # 删除 students.pop('ww') print(students) # KeyError:没有要删除的元素时就报错 # students.pop('www') # print(students) del students["mazi"] print(students) # NameError: name 'students' is not defined # del students # print(students) # 增减和修改 # 如果修改的key在字典中存在,那么新值覆盖旧值 # 如果不存在,就新添加一组对应关系 update_name=input("请输入要修改的学生姓名") update_new_name=input("请输入新的名字") update_new_score=input("请输入新的分数") new_student_list=[update_new_name,update_new_score] # students[update_name]=new_student_list # print(students) new_student_dict={'name':update_new_name,'score':update_new_score} students[update_name]=new_student_dict print(students)
之前用列表list做了一个v1.0版本的,现在改用字典dict来做,升级为v1.1版本
students={}
while True:
print("欢迎光临学生管理系统v1.1:")
print("1、添加学生")
print("2、查找学生")
print("3、展示所有")
print("4、删除学生")
print("5、修改学生")
print("6、退出系统")
choose=input("请选择1-6:")
if choose=='1':
# 添加学生逻辑
name=input("学生姓名")
score=input("学生分数")
student={'name':name,'score':score}
students[name]=student
print("添加成功")
elif choose=='2':
# 输入要查找的学生姓名
search_name=input("请输入你要查找的学生姓名")
all_keys=students.keys()
if search_name not in all_keys:
print("没有你要查找的学生")
else:
student_dict=students[search_name]
print("name:%s score:%d"%(student_dict['name'],student_dict['score']))
elif choose=='3':
print("所有学生信息如下",end=":")
# print(students)
for key,stu_dic in students.items():
print("key:%s"%key)
print("name:%s score:%s"%(stu_dic['name'],stu_dic['score']))
elif choose=='4':
del_name=input("请输入要删除的学生姓名")
all_keys = students.keys()
if del_name in all_keys:
del students[del_name]
print("删除成功")
else:
print("没有该学生或者已经删除")
elif choose=='5':
# 修改逻辑
update_name=input('请输入你要修改的学生的姓名:\n')
all_keys=students.keys()
if update_name not in all_keys:
print("没有该学生")
else:
new_name=input("请输入新名字")
new_score=int(input("请输入新分数"))
new_stu={'name':new_name,'score':new_score}
#将旧学生删除
del students[update_name]
students[new_name]=new_stu
print("修改成功")
elif choose=='6':
print("退出系统,欢迎再次使用")
break
over......
备案号:湘ICP备19000029号
Copyright © 2018-2019 javaxl晓码阁 版权所有