你能用python写一个不用连接数据库的名片管理系统吗,要求有显示菜单,能够新增名片、显示所有名片、搜索名片,并且对查找到的名片能够进行增加、删除、修改
时间: 2024-01-14 22:02:04 浏览: 26
当然可以,请看下面的代码实现:
```python
# 定义一个空列表,用于存储名片信息
cards = []
# 显示菜单
def show_menu():
print("*" * 30)
print("欢迎使用【名片管理系统】V1.0")
print("")
print("1. 新增名片")
print("2. 显示所有名片")
print("3. 搜索名片")
print("")
print("0. 退出系统")
print("*" * 30)
# 新增名片
def add_card():
print("-" * 30)
print("新增名片")
name = input("请输入姓名:")
phone = input("请输入电话:")
email = input("请输入邮箱:")
card = {"name": name, "phone": phone, "email": email}
cards.append(card)
print("添加成功!")
# 显示所有名片
def show_all_cards():
print("-" * 30)
print("所有名片")
if len(cards) == 0:
print("当前没有任何名片记录,请使用新增功能添加名片!")
return
for card in cards:
print("姓名:{}\n电话:{}\n邮箱:{}".format(card["name"], card["phone"], card["email"]))
print("-" * 30)
# 搜索名片
def search_card():
print("-" * 30)
print("搜索名片")
keyword = input("请输入要搜索的关键字:")
for card in cards:
if keyword in card["name"] or keyword in card["phone"] or keyword in card["email"]:
print("姓名:{}\n电话:{}\n邮箱:{}".format(card["name"], card["phone"], card["email"]))
print("-" * 30)
deal_card(card)
break
else:
print("抱歉,没有找到该名片!")
# 对查找到的名片进行增加、删除、修改
def deal_card(card):
action = input("请选择要进行的操作:[1] 修改 [2] 删除 [0] 返回上级菜单")
if action == "1":
card["name"] = input_card_info(card["name"], "姓名")
card["phone"] = input_card_info(card["phone"], "电话")
card["email"] = input_card_info(card["email"], "邮箱")
print("修改成功!")
elif action == "2":
cards.remove(card)
print("删除成功!")
# 输入名片信息
def input_card_info(default_value, tip_message):
result = input("请输入{}[{}]: ".format(tip_message, default_value))
if len(result) == 0:
return default_value
else:
return result
# 主函数
def main():
while True:
# 显示菜单
show_menu()
# 获取用户输入的操作选项
action = input("请选择操作功能:")
# 根据用户的选择执行相应的操作
if action == "1":
add_card()
elif action == "2":
show_all_cards()
elif action == "3":
search_card()
elif action == "0":
print("欢迎再次使用【名片管理系统】,再见!")
break
else:
print("输入有误,请重新输入!")
if __name__ == "__main__":
main()
```
这个名片管理系统不需要连接数据库,使用Python内置的列表来存储名片信息。通过定义不同的函数来实现新增名片、显示所有名片、搜索名片和对查找到的名片进行增加、删除、修改等不同功能。用户可以根据菜单提示进行相应的操作,非常方便实用。