card_list = []
# 用列表记录所有名片字典
def show_menu():
"""显示菜单"""
print('** ' * 20)
print('欢迎使用【名片管理系统】v1.0')
print('1.新建名片')
print('2.显示全部')
print('3.查询名片')
print('0.退出系统')
print('** ' * 20)
def new_card():
"""新建名片"""
print('- ' * 20)
print('功能:新建名片')
# 1.提示用户输入名片信息
name = input('请输入姓名:')
phone = input('请输入电话:')
qq = input('请输入QQ号码:')
email = input('请输入邮箱:')
# 2.将用户信息保存到一个字典
card_dict = {'name': name,
'phone': phone,
'qq': qq,
'email': email}
# 3.将用户字典添加到名片列表
card_list.append(card_dict)
# print(card_dict)
# 4.提示添加成功信息
print('成功添加%s的名片' % card_dict['name'])
def show_all():
"""显示全部"""
print('- ' * 20)
print('功能:显示全部')
if len(card_list) == 0:
print('提示:没有任何记录')
return
# 打印表头
for name in ['姓名', '电话', 'QQ', '邮箱']:
print(name, end='\t\t')
print('')
print('= ' * 20)
for card_dict in card_list:
print("%s\t\t%s\t\t%s\t\t%s" % (card_dict['name'],
card_dict['phone'],
card_dict['qq'],
card_dict['email']))
def search_card():
"""查询名片"""
print('- ' * 20)
print('功能:查询名片')
if len(card_list) == 0:
print('提示:名片薄为空,转到新建名片')
return new_card()
# 1.提示要搜索的姓名
find_name = input('请输入要搜索的姓名:')
# 2.变量字典
for card_dict in card_list:
if card_dict['name'] == find_name:
print('姓名\t\t电话\t\tQQ\t\t邮箱')
print('- ' * 20)
print("%s\t\t%s\t\t%s\t\t%s" % (card_dict['name'],
card_dict['phone'],
card_dict['qq'],
card_dict['email']))
print('- ' * 20)
# 针对找到的字典进行后续操作:修改、删除
deal_card(card_dict)
break
else:
print('没有找到“ %s ”的名片' % find_name)
def deal_card(find_dict):
action = input('请选择要执行的操作'
'【1】修改【2】删除【其他键】返回上级菜单')
if action == '1':
find_dict['name'] = input('姓名修改为(按回车不修改):') or find_dict['name']
find_dict['phone'] = input('电话修改为(按回车不修改):') or find_dict['phone']
find_dict['qq'] = input('QQ修改为(按回车不修改):') or find_dict['qq']
find_dict['email'] = input('邮箱修改为(按回车不修改):') or find_dict['email']
print("名片修改成功")
print(find_dict)
elif action == '2':
card_list.remove(find_dict)
print('删除成功')