用python写一个不用连接数据库的名片管理系统,要求能够显示菜单、显示所有名片、搜索名片、新增名片、删除名片、修改名片,处理查找到的名片,并且能够记录修改次数
时间: 2023-07-10 12:39:05 浏览: 38
好的,我可以帮您设计一个简单的名片管理系统。由于您要求不连接数据库,我们可以使用 Python 的文件操作来存储和读取名片信息。
首先,我们需要定义一个名片的类,来保存每张名片的信息。如下所示:
```python
class Card:
def __init__(self, name, phone, email):
self.name = name
self.phone = phone
self.email = email
self.modify_count = 0
def __str__(self):
return f"Name: {self.name}\nPhone: {self.phone}\nEmail: {self.email}\nModify Count: {self.modify_count}"
```
接下来,我们需要定义一个名片管理系统的类,来实现菜单、显示所有名片、搜索名片、新增名片、删除名片、修改名片等功能。如下所示:
```python
class CardManager:
def __init__(self):
self.cards = []
def show_menu(self):
print("1. Show all cards")
print("2. Search card")
print("3. Add card")
print("4. Delete card")
print("5. Modify card")
print("6. Exit")
def show_all_cards(self):
if len(self.cards) == 0:
print("No cards found.")
else:
for card in self.cards:
print(card)
print("")
def search_card(self):
name = input("Enter name: ")
for card in self.cards:
if card.name == name:
print(card)
print("")
return
print("Card not found.")
def add_card(self):
name = input("Enter name: ")
phone = input("Enter phone: ")
email = input("Enter email: ")
card = Card(name, phone, email)
self.cards.append(card)
print("Card added.")
def delete_card(self):
name = input("Enter name: ")
for card in self.cards:
if card.name == name:
self.cards.remove(card)
print("Card deleted.")
return
print("Card not found.")
def modify_card(self):
name = input("Enter name: ")
for card in self.cards:
if card.name == name:
card.phone = input("Enter new phone: ")
card.email = input("Enter new email: ")
card.modify_count += 1
print("Card modified.")
return
print("Card not found.")
def run(self):
while True:
self.show_menu()
choice = input("Enter your choice: ")
if choice == "1":
self.show_all_cards()
elif choice == "2":
self.search_card()
elif choice == "3":
self.add_card()
elif choice == "4":
self.delete_card()
elif choice == "5":
self.modify_card()
elif choice == "6":
print("Goodbye!")
break
else:
print("Invalid choice.")
```
最后,我们可以在程序入口处实例化 CardManager 类,并调用 run() 方法来启动程序。如下所示:
```python
if __name__ == "__main__":
card_manager = CardManager()
card_manager.run()
```
这样,一个简单的名片管理系统就完成了。您可以根据需要对上述代码进行修改和优化。