#每天一点点#
python 名片管理系统 函数版
这里有之前写过的 ,从0到0.1的进步 点击查看初始代码
点击可以查看 python字典的增删改查
点击可以查看 python列表的增删改查
整体代码如下:
card_infors =[] #定义一个空列表,来存储名字,全局变量
def print_menu(): #定义打印功能的函数
''' 用于打印功能''' #函数文档说明,用help查询
print('='*18)
print(' 名字系统')
print('1:添加一个新的名字')
print('2:删除一个名字')
print('3:修改一个名字')
print('4:查询一个名字')
print('5:显示所有名片')
print('6:结束程序')
print('='*18)
def add_new_card_infor():
''' 完成添加一个新的名片''' #函数文档说明,用help查询
new_name = input('请输入一个新名字:')
new_qq = input('请输入一个新qq:')
new_age = input('请输入一个新年龄:')
new_addr = input('请输入一个新地址:')
#定义一个字典,来存储名片
new_infor = {}
new_infor['name'] = new_name #见我博客的“python字典的增删改查”篇介绍
new_infor['qq'] = new_qq
new_infor['age'] = new_age
new_infor['addr'] = new_addr
#将一个字典增加到列表中
global card_infors #更改全局变量
card_infors.append(new_infor) #见我博客的“python列表的增删改查”篇介绍
def find_card_infor():
''' 用来查询一个名片'''
global card_infors #更改全局变量,一般情况下,是放在一个函数的开始位置
find_name = input('请输入要查找的名字:')
find_flag = 0 #默认没找到
for temp in card_infors: #遍历一下子
if find_name == temp['name']:
print('%s\t%s\t%s\t%s'%(temp['name'],temp['qq'],temp['age'],temp['addr']))
find_flag = 1 #表示找到
break #与while用法相同
#判断是否找到
if find_flag == 0:
print('查无此人')
def show_all_card_infor():
'''用来展示所有名片信息 '''
global card_infors
print('姓名\tqq\t年龄\t住址') #表头
for temp in card_infors:
#将4列内容分别取出
print('%s\t%s\t%s\t%s'%(temp['name'],temp['qq'],temp['age'],temp['addr']))
def main():
''' 完成对整个程序的控制'''
#1:打印功能
print_menu()
while True:
num = int(input('请输入功能序号:')) #2:获取用户的选择
#3:根据用户的选择,执行相应的功能
if num ==1:
add_new_card_infor()
#print(card_infors) #for test
elif num ==2:
pass
elif num ==3:
pass
elif num ==4:
find_card_infor()
elif num ==5:
show_all_card_infor()
elif num ==6:
break
else:
print('您输入的序号有误,请输入1-6之间的任意整数')
print ('') #循环完一次,有换行
main() #调用主函数