需要完成的基本功能:
- 添加名片
- 删除名片
- 修改名片
- 查询名片
- 退出系统
程序运行后,除非选择退出系统,否则重复执行功能
注:系统中存储的名片中,电话不能重复
def add_card():
"""添加名片"""
inname = input('请输入姓名:')
intel = input('请输入电话:')
inage = input('请输入年龄:')
inoccupation = input('请输入职业:')
# 判断该名片是否已经存在
for call_card in call_cards:
if call_card['tel'] == intel: #为真表示名片已存在
print('该名片已存在')
return
#名片系统中不存在该名片,新增
call_cards.append({'name': inname, 'tel': intel, 'age': inage, 'occupation': inoccupation})
print('名片添加成功!')
def del_card():
"""删除名片"""
intel = input('请输入要删除的名片的电话:')
for call_card in call_cards:
if call_card['tel'] == intel:
# 找到该名片,并将其删除
call_cards.remove(call_card)
print('已成功删除名片:', intel)
return
#要删除的名片不存在
print('该名片不存在!')
def change_card():
"""修改名片"""
intel = input('请输入需要修改的名片人的电话:')
for call_card in call_cards:
if call_card['tel'] == intel:
# 询问是否需要修改电话号码,需要则修改
answer = input('你需要修改电话号码(%s)吗(y/n):' % call_card['tel'])
if answer == 'y':
new_tel = input('请输入新的电话号码:')
call_card['tel'] = new_tel
# 询问是否需要修改姓名,需要则修改
answer = input('你需要修改姓名(%s)吗(y/n):' % call_card['name'])
if answer == 'y':
new_name = input('请输入新的姓名:')
call_card['name'] = new_name
# 询问是否需要修改年龄,需要则修改
answer = input('你需要修改年龄(%s)吗(y/n):' % call_card['age'])
if answer == 'y':
new_age = input('请输入新的年龄:')
call_card['age'] = new_age
# 询问是否需要修改职业,需要则修改
answer = input('你需要修改职业(%s)吗(y/n):' % call_card['occupation'])
if answer == 'y':
new_occupation = input('请输入新的职业:')
call_card['occupation'] = new_occupation
# new_name = input('请输入新的姓名:')
# new_tel = input('请输入新的电话号码:')
# new_age = input('请输入新的年龄:')
# new_occupation = input('请输入新的职业:')
#
# call_card['name'] = new_name
# call_card['tel'] = new_tel
# call_card['age'] = new_age
# call_card['occupation'] = new_occupation
print('名片修改成功!')
return
#名片不存在
print('该名片不存在!')
def find_card():
"""查找名片"""
intel = input('请输入要查询名片人的电话:')
for call_card in call_cards:
if call_card['tel'] == intel:
print('\t姓名:' + call_card['name'])
print('\t电话:' + call_card['tel'])
print('\t年龄:' + call_card['age'])
print('\t职业:' + call_card['occupation'])
return
#查询的名片不存在
print('你所查询的名片不存在!')
#创建名片列表(字典列表,字典中分别存储姓名和电话)
call_cards = []
#显示用户可进行的操作
print("****************名片管理系统******************")
print("用户选项:")
print('1、添加名片')
print('2、删除名片')
print('3、修改名片')
print('4、查询名片')
print('5、退出系统')
while 1:
#用户选择操作
user_choose = int(input('请输入你要操作的对应序号:'))
#根据用户的输入确定具体操作
# ******添加名片******
if user_choose == 1:
add_card()
# ******删除名片******
elif user_choose == 2:
del_card()
# ******修改名片*******
elif user_choose == 3:
change_card()
# ******查询名片******
elif user_choose == 4:
find_card()
# ******退出系统******
elif user_choose == 5:
sys_quit = input("确认退出请按q:")
if sys_quit == 'q':
break
#****** 输入错误******
else:
print('输入错误,没有该选项,请重新选择!')