python编写一个名片
详解Python做一个名片管理系统
名片管理系统有两个模块组成:cards_main.py
和 cards_tools.py
一个是主程序,另一个是封装增删改查函数的被调用程序
代码如下
cards_main.py
|
#! /usr/bin/python # -*- coding:utf-8 -*- import cards_tools # 无限循环,用户决定什么时候退出循环! while True : # TODO(作者) 显示功能菜单 # TODO 提醒要做的事情 cards_tools.show_menu() action_str = raw_input ( '请选择希望执行的操作:' ) print '您选择的操作是【%s】' % action_str # 1,2,3针对名片的操作 if action_str in [ '1' , '2' , '3' ]: pass #新增名片 if action_str = = '1' : cards_tools.new_card() #显示全部 elif action_str = = '2' : cards_tools.show_all() #查询名片 elif action_str = = '3' : cards_tools.search_card() # 0 退出系统 elif action_str = = '0' : print '欢迎再次使用名片系统' #如果暂时不想写分支代码 #可以用pass break # 其他内容错误,提示用户 else : print '您输入的不正确,请重新选择' |
cards_tools.py
|
cards_tools.py # -*- coding:utf-8 -*- #用列表记录所有名片字典 card_list = [] def show_menu(): """显示菜单""" print '*' * 50 print '欢迎使用【名片管理系统 v1.0】' print '' print '1. 新增名片' print '2. 显示全部' print '3. 搜索名片' print '0. 退出系统' print '*' * 50 def new_card(): """新增名片""" print '新增名片' # 1. 提示用户输入名片的详细信息 name_str = raw_input ( '请输入姓名:' ) phone_str = raw_input ( '请输入电话:' ) qq_str = raw_input ( '请输入QQ:' ) email_str = raw_input ( '请输入邮箱:' ) # 2. 使用用户输入信息建立一个字典 card_dic = { 'name' : name_str, 'phone' : phone_str, 'qq' : qq_str, 'email' : email_str } # 3. 将名片字典添加到列表 card_list.append(card_dic) # 4. 提示用户添加成功 print '用户 %s 添加成功' % name_str def show_all(): """展示所有名片""" print '展示所有名片' # 如果没有任何名片 if len (card_list) = = 0 : print '当前没有任何名片' # return可以返回结果给函数 # 也可以直接结束函数 # return后的代码不执行 return # 打印表头 for head in [ '姓名' , '电话' , 'QQ' , '邮箱' ]: print '%s\t\t' % head, print '' for card_dic in card_list: print '%s\t\t%s\t\t%s\t\t%s\t\t' % (card_dic[ 'name' ], card_dic[ 'phone' ], card_dic[ 'qq' ] , card_dic[ 'email' ]) print '' def search_card(): """搜索名片""" print '搜索名片' # 1. 提示用户要搜索的姓名 find_name = raw_input ( '请输入你要搜索的姓名:' ) # 2. 遍历列表进行查询,如果没有则提示用户 for card_dic in card_list: if card_dic[ 'name' ] = = find_name: print '找到了 %s' % find_name print '%s\t\t%s\t\t%s\t\t%s\t\t' % (card_dic[ 'name' ], card_dic[ 'phone' ], card_dic[ 'qq' ] , card_dic[ 'email' ]) # 针对找到的记录进行修改和删除 deal_card(card_dic) break else : print '没有找到 %s' % find_name def deal_card(find_dic): """ 处理找到的名片,进行修改和删除 :param find_dic: 找到的字典名片 """ print find_dic action_str = raw_input ( '请选择要执行的操作' '[1]修改 [2]删除 [0]返回上级菜单' ) if action_str = = '1' : input_card_info(find_dic[ 'name' ], '姓名:' ) input_card_info(find_dic[ 'phone' ], '电话:' ) input_card_info(find_dic[ 'qq' ], 'QQ:' ) input_card_info(find_dic[ 'email' ], '邮箱:' ) print '修改名片成功' elif action_str = = '2' : card_list.remove(find_dic) print '删除名片成功' def input_card_info(dic_value, tip_message): """输入名片信息 :param dic_value:字典原有值 :param tip_message:输入的提示文字 :return :返回修改后的值,如果没有输入则返回原值 """ result_str = raw_input (tip_message) # if len(result_str) > 0: # return result_str # # 3. 如果用户没有输入,则用原来的值 # else: # return dic_value if len (result_str) > 0 : dic_value = result_str else : dic_value = dic_value |
以上所述是小编给大家介绍的Python如何做一个名片管理系统详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
原文链接:https://blog.csdn.net/weixin_38892128/article/details/85934788