Python面向对象名片管理系统实现:基于文件存储的开发示例
本文介绍使用Python面向对象方法开发名片管理系统的完整代码。系统通过Card类定义名片属性,CardManager类实现新增、显示及查找功能,并强调利用文件进行数据持久化存储。代码包含完整的交互逻辑与错误处理,适合Python初学者参考学习管理系统开发基础。
Python名片管理系统开发概述
本文分享了一个使用Python编写的名片管理系统开发实例,供读者参考学习。
该系统采用面向对象的设计思路进行开发,核心要求是使用文件来存储名片数据。
名片类与管理类代码实现
#定义名片类
class Card(object):
def __init__(self,name,phone,QQ,Email):
self.name=name
self.phone=phone
self.QQ=QQ
self.Email=Email
def __str__(self):
return f"{self.name},{self.phone},{self.QQ},{self.Email}"
#定义名片管理类
class Card_mannager(object):
def __init__(self):
self.card_list=[]
#新建名片
def new_card(self):
name=input("请输入姓名:")
phone=input("请输入电话:")
QQ=input("请输入QQ:")
Email=input("请输入Email:")
card=Card(name,phone,QQ,Email)
self.card_list.append(card)
#显示名片
def show_card(self):
if len(self.card_list)>0:
print("所以名片信息如下:")
print("")
for i in self.card_list:
print("姓名:"+i.name,"电话:"+i.phone,"QQ:"+i.QQ,"Email:"+i.Email)
else:
print("没有该联系人信息!")
#查找名片
def search_card(self):
name=input("请输入你要查找的姓名:")
for i in self.card_list:
if i.name==name:
print("查找成功!")
print("姓名:"+i.name,"电话:"+i.phone,"QQ:"+i.QQ,"Email:"+i.Email)
print(" ")
print("-"*80)
print("1:删除")
print("2:修改")
print("0:返回上一级菜单")
action=int(input("请选择操作功能:"))
while True:
if action == 1:
self.card_list.remove(i)
self.save_card()
print("删除成功!")
break
elif action==2:
i.name=input("请输入姓名:")
i.phone=input("请输入电话:")
i.QQ=input("请输入QQ:")
i.Email=input("请输入Email:")
self.save_card()
print("修改成功!")
break
elif action==0:
break
else:
print("输入有误,请重新输入!")
break
break
else:
print("没有该联系人信息!")
#保存名片
def save_card(self):
flie = open("data.data","w")
cardlist=[i.__dict__ for i in self.card_list]
flie.write(str(cardlist))
flie.close()
#加载名片
def load_card(self):
try:
flie = open("data.data","r")
except:
flie = open("data.data","w")
else:
data=eval(flie.read())
if len(data)>0:
for i in data:
card=Card(i["name"],i["phone"],i["QQ"],i["Email"])
self.card_list.append(card)
finally:
flie.close()
#菜单
@staticmethod
def show_menu():
print("*"*80)
print("欢迎使用【名片管理系统】V2.0")
print()
print("1.新建名片")
print("2.显示全部名片")
print("3.查询名片")
print()
print("0.退出系统")
print("*"*80)
def run(self):
self.load_card()
while True:
self.show_menu()
action=int(input("请选择操作功能:"))
print("您的选择是:{0}".format(action))
if action==1:
self.new_card()
self.save_card()
print("添加成功!")
elif action==2:
self.show_card()
elif action==3:
self.search_card()
elif action==0:
print("欢迎再次使用!")
break
else:
print("输入有误,请重新输入!")
if __name__=="__main__":
A=Card_mannager()
A.run()
如需获取更多相关学习资料,请关注专题《管理系统开发》。
以上就是本文的全部内容,希望能为读者的学习提供有益帮助,同时也欢迎大家继续支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













