#储存所有名片的列表
cardList = []
def showMenu():
'''显示功能菜单'''
print("*" * 100)
print("欢迎使用【名片管理系统】")
print("1. 添加名片")
print("2. 显示全部")
print("3. 搜索名片")
print("\n")
print("0. 退出系统")
print("*" * 100)
def newCard():
'''添加名片'''
print("-" * 100)
print("添加名片")
#提示用户输入信息
name = input("请输入姓名: ")
phone = input("请输入电话: ")
qq = input("请输入QQ: ")
email = input("请输入邮箱: ")
#建议一个名片字典
cardDict = {"name":name, "phone":phone, "qq":qq, "email":email}
#将名片添加到字典列表中
cardList.append(cardDict)
print(cardList)
#提示用户添加成功
print("添加%s的名片成功! " % name)
def showAll():
'''显示所有名片'''
print("-" * 100)
print("显示所有名片")
#判断是否存在名片记录,如果没有,提示用户并且返回
if len(cardList) == 0:
print("当前没有任何名片记录,请添加名片!")
return
#打印表头
for name in ["name", "phone", "qq", "email"]:
print(name, end="\t\t\t")
print("")
# 打印分割线
print("=" * 100)
#遍历名片列表以此输出字典信息
for cardDict in cardList:
print("%s\t\t\t%s\t\t\t%s\t\t\t%s" % (cardDict["name"],
cardDict["phone"],
cardDict["qq"],
cardDict["email"]))
def searchCard():
'''搜索名片'''
print("-" * 100)
print("搜索名片")
#提示用户输入要搜索的姓名
findName = input("请输入要搜索的姓名: ")
#遍历名片列表,查询要搜索的姓名,如果没有找到,需要提示用户
for cardDict in cardList:
if cardDict["name"] == findName:
print("姓名\t\t电话\t\tQQ\t\t邮箱")
print("=" * 100)
print("%s\t\t%s\t\t%s\t\t%s" % (cardDict["name"],
cardDict["phone"],
cardDict["qq"],
cardDict["email"]))
#针对找到的名片记录执行修改和删除操作
dealCard(cardDict)
break
else:
print("抱歉,没有找到 %s" % findName)
def dealCard(cardDict):
print(cardDict)
actionStr = int(input("请输入要执行的操作【1】修改 【2】删除 【0】返回上一级"))
if actionStr == 1:
cardDict["name"] = inputCartInfo(cardDict["name"], "姓名: ")
cardDict["phone"] = inputCartInfo(cardDict["phone"], "电话: ")
cardDict["qq"] = inputCartInfo(cardDict["qq"], "QQ: ")
cardDict["email"] = inputCartInfo(cardDict["email"], "邮箱: ")
print("修改名片成功")
elif actionStr == 2:
cardList.remove(cardDict)
print("删除名片成功")
def inputCartInfo(dictValue, tipMessage):
#提示用户输入的信息
resultStr = input(tipMessage)
#针对用户的输入进行判断,如果用户输入了内容,直接返回结果
if len(resultStr) > 0:
return resultStr
#如果用户没有输入内容,返回字典中原来的值
else:
return dictValue
#死循环
while True:
#调用菜单功能
showMenu()
actionStr = int(input("请选择执行的操作: "))
print("你选的操作是:【%d】" % actionStr)
#对用户的信息,通过列表的方式进行判断
if actionStr in [1, 2, 3]:
#添加名片
if actionStr == 1:
newCard()
#显示名片
elif actionStr == 2:
showAll()
#查询名片
elif actionStr == 3:
searchCard()
elif actionStr == 0:
print("欢迎再次使用【名片管理系统】")
break
else:
print("您输入的不正确,请重新选择")
名片管理系统
最新推荐文章于 2025-02-10 14:17:35 发布