pyhon基础之实例操作__个人名片管理系统,输入,查询,增加,删除等基本表的操作
说明:为了操作方便,在python中我们用字典来获取输入的数据,通过对字典的增删改查实现相应的功能:
#这是一个个人名片管理系统
class BusinessCard(object):
def __init__(self,name,qq,weixin,address):
'''初始化'''
self.name = name
self.qq = qq
self.weixin = weixin
self.address = address
class MySystem(object):
'''个人名片管理系统'''
def __init__(self):
'''initial'''
self.card_infos = []
def print_menu(self):
'''完成打印'''
print("="*50)
print('个人名片管理系统V0.01')
print('1.添加一个新的名片')
print('2.删除一个名片')
print('3.修改一个名片')
print('4.查询一个名片')
print('5.显示所有名片')
print('6.退出系统')
def add_new_card_infor(self):
new_name = input('请输入新的名字')
new_qq = input('请输入新的qq')
new_weixin = input('请输入新的微信')
new_addr = input('请输入新的住址')
#定义一个心得对象用来存储一个新的名片
new_infor = BusinessCard(new_name,new_qq,new_weixin,new_addr)
#将一个字典,添加到列表
self.card_infos.append(new_infor)
print('添加成功')
def find_card_by_name(self,name):
'''根据名字查找名片'''
find_flag = None
for temp in self.card_infos:
if name == temp.name:
#表示找
find_flag = temp
break
return find_flag
def find_card_infor(self):
'''用来查询一个名片'''
find_name = input('请输入要查询的姓名')
find_flag = self.find_card_by_name(find_name)
#判断是否找到了
if find_flag == None:
print('查无此人')
else:
print('%s\t%s\t%s\t%s'%(find_flag.name,find_flag.qq,find_flag.weixin,find_flag.address))
def delet_card_infor(self):
'''用来删除名片'''
find_name = input('请输入要删除的信息:')
#默认没有找到
find_flag = self.find_card_by_name(find_name)
#判断是否找到了
if find_flag == None:
print('查无此人')
else:
self.card_infors.remove(find_flag)
print('删除成功')
def update_card_infor(self):
'''用来删除名片'''
find_name =input('请输入更新的信息的名字:')
find_flag = self.find_card_by_name(find_name)
if find_flag == None:
print('查无此人')
else:
new_qq = input('请输入新的qq:')
new_weixin = input('请输入新的微信:')
new_addr = input('请输入新的住址:')
find_flag.qq = new_qq
find_flag.weixin = new_weixin
find_flag.address = new_addr
print('修改成功')
def show_all_infor(self):
'''显示所有名片信息'''
print('姓名\t QQ\t微信\t住址')
for temp in self.card_infos:
print('%s\t%s\t%s\t%s'%(temp.name,temp.qq,temp.weixin,temp.address))
def begin(self):
while True:
num = int(input('\n请输入操作序列号:'))
if num == 1:
self.add_new_card_infor()
elif num == 2:
self.delet_card_infor()
elif num == 3:
self.update_card_infor()
elif num == 4:
self.find_card_infor()
elif num == 5:
self.show_all_infor()
elif num == 6:
break
else:
print('Error,请重新输入')
def main():
mySystem = MySystem()
mySystem.print_menu()
mySystem.begin()
#调用主函数
main()
下面试着对程序进行相应的运算:
输入1,对应信息添加:姓名:a,qq:a,微信:a,住址:a
继续输入1,
对应信息添加:姓名:b,qq:b,微信:b,住址:b
然后修改a的信息:输入操作3:修改:a,
请输入更新的信息的名字:a
请输入新的qq:1212
请输入新的微信:x56171
请输入新的住址:河北省石家庄市
最后查看结果:
请输入操作序列号:5
姓名 QQ 微信 住址
a 1212 x56171 河北省石家庄市
b b b b
说明:该例题有助于对字典的增删改查的运用,同时,对类的调用,以及Python的弱类型语言有很大帮助!因此多多练习基础可以提升你的python基础功底