python - 名片管理系统

Fronde ·
更新时间:2024-11-14
· 550 次阅读

名片管理系统主要分为三个部分:
(1)新增名片
(2)显示名片
(3)查询名片

首先创建两个python文件,cards_main.py 和 cards_tools.py

cards_main.py

import cards_tools # 无限循环,有用户主动决定什么时候退出循环 while True: # 显示菜单功能 action_str = input(‘请选择希望执行的操作:’) print(‘您选择的操作是【%s】’% action_str) if action_str in [‘1’,’2’,’3’]: # 新增名片 if action_str == ‘1’: cards_tools.new_card() if action_str == ‘2’: cards_tools.show_all() if action_str == ‘3’: cards_tools.search_card() elif action_str: print(‘欢迎再次使用【名片管理系统】‘) break else: print(‘您输入的不正确,请重新选择’)

card_main.py 文件主要是列了一个名片管理系统的大框,主要用了 if 函数判断用户输入的数字决定输出的是哪个模块。
输入 1 是新增名片
输入 2 是显示名片
输入 3 是搜索名片
输入 0 是退出系统

cards_tools.py

# 记录所有的名片字典 card_list = [] def show_menu(): print(‘*’ * 50) print(‘欢迎使用【名片管理系统】V1.0’) print(‘’) print(‘1.新增名片’) print(‘2.显示名片’) print(‘3.搜索名片’) print(‘’) print(‘0.退出系统’) print(‘*’ * 50)

在这里插入图片描述
上述代码的运行结果如图片所示,接下来要对if函数下面的三个菜单添加功能,在输入数字1下方的定义new_card(),在输入数字2下方定义show_all(),在输入数字3下方定义search_card()。

cards_tools.py

def new_card(): # 新增名片 print(‘新增名片‘) # 提示用户输入详细信息 name_str = input(‘请输入姓名:’) phone_str = input(‘请输入电话号码:’) qq_str = input(‘请输入QQ号码:’) email_str = input(‘请输入邮箱:’) # 使用用户输入的信息建立一个名片字典 card_dict = {‘name’:name_str, ’phone’:phone_str, ’qq’:qq_str, ’email’:email_str} # 将名片字典添加到列表中 card_list.append(card_dict) print(card_list) # 提示用户添加成功 print(‘添加%s的名片成功’ % name_str) def show_all(): # 显示所有名片 print(‘-‘*50) print(‘显示所有名片’) if len(card_list) == 0: print(‘当前没有名片,请添加名片!’) return for name in [‘姓名’,’电话’,’QQ’,’邮箱’]: print(name,end=‘\t\t’) print(‘’) print(‘=‘*50) 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(‘-‘*50) print(‘搜索名片’) # 提示用户要搜索的姓名 find_name = input(‘请输入要搜索的姓名:’) # 遍历名片列表,搜索要搜索的姓名,如果没找到,要提示用户 for card_dict in card_list: if card_dict = find_name: print(‘姓名\t\t电话\t\tQQ\t\t邮箱’) print(‘=‘*50) print(‘%s\t\t%s\t\t%s\t\t%s’ % (card_dict[‘name’], card_dict[’phone’], card_dict[‘qq’], card_dict[‘email’])) # 针对找到的名片记录进行修改或删除操作 deal_card(card_dict) break else: print(‘没找到%s’ % find_name)

deal_card() 和 input_card_info()函数是对search_card()搜索名片中搜索出来的名片可以进行修改和删除,修改可以只修改其中一项,不需要修改的项不需要填写内容直接回车即可。

def deal_card(find_name): print(find_dict) action_str = input(‘请输入要执行的操作:’ ‘[1]修改[2]删除[0]返回上一级菜单’) if action_str == ‘1’: find_dict[‘name’] = input_card_info(find_dict[‘name’],’姓名:’) find_dict[‘phone’]= input_card_info(find_dict[‘phone’],’电话号码:’) find_dict[‘qq’]= input_card_info(find_dict[‘email’],’QQ号码:’) find_dict[]= input_card_info(find_dict[‘email’],’邮箱:’) print(‘修改名片成功!’) elif action_str == ‘2’: card_list.remove(find_dict) print(‘删除成功!’) def input_card_info(dict_value,tip_message): # 提示用户输入信息 return_str = input(tip_message) # 针对用户输入的信息进行判断,如果用户输入了内容,直接返回结果 if len(result_str)>0: return result_str else: return dict_value # 如果用户没有输入内容,返回字典中原有的值
作者:fervid的小虫



名片 系统 Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号