#通讯录
#界面提醒设置
print("|---欢迎进入通讯录程序---|")
print("|---1:查询全部联系人---|")
print("|---2:查询特定联系人---|")
print("|---3:更新联系人信息---|")
print("|---4:插入新的联系人---|")
print("|---5:删除已有联系人---|")
print("|---6:清除全部联系人---|")
print("|---7:退出通讯录程序---|")
print("")
#构建字典,储存联系人信息(输入数据)
dict = {'211111':'超人','211112':'神奇女侠','211113':'绿帽侠','211114':'蝙蝠侠','211115':'闪电侠',}
#定义各种功能函数
#(1)查询所有联系人信息
def queryAll():
if dict == {}:
print('通讯录中没有任何人信息')
else:
i = 1
for key,value in dict.items():
print("{0} 学号:{1},姓名: {2}".format(i,key,value))
i+=1
#(2)查询一个联系人信息
def queryOne():
sno=input('请输入要查询的联系人学号:')
print(sno+":"+dict.get(sno,'联系人不存在')) #dict.get()函数返回指定键的值
#(3)更新联系人信息
def update():
sno=input('请输入要修改的联系人的学号:')
if (sno in dict):
value=input("请输入姓名:") #输入新的姓名值给value
dict[sno]=value #将value赋给sno键所对应的值
else:
print("联系人不存在")
#(4)插入一个新联系人
def insertOne():
sno=input('请输入要插入的联系人名称:')
if(sno in dict):
print("您输入的学号在通讯录中已存在"+"-->>"+sno+":"+dict[sno])
else:
value=input("请输入姓名:")
dict[sno]=value
#(5)删除一个用户
def deleteOne():
sno=input("请输入联系人学号")
value=dict.pop(sno,'联系人不存在') #删除sno键所对应的数据,包括键和值
if value=='联系人不存在':
print("联系人不存在")
else:
print("联系人"+sno+"已删除")
#(6)清空通讯录
def clearAll():
cis=input("提示:确认清空通讯录吗?确认操作输入'Y/y',输入其他字符直接退出")
if cis in ['YES','yes','Y','y','Yes']:
dict.clear()
print('通讯录已全部清空!')
#(7)退出通讯录
#def esc():
#个函数的调用,构建无限循环,实现重复操作
while True:
n=input("请根据菜单输入操作序号:")
if (n=='1'):
queryAll()
elif (n=='2'):
queryOne()
elif (n=='3'):
update()
elif (n=='4'):
insertOne()
elif (n=='5'):
deleteOne()
elif (n=='6'):
clearAll()
elif (n=='7'):
esc()
break