python自学笔记(四)——名片管理系统

编程入门 行业动态 更新时间:2024-10-22 08:25:07

python自学笔记(四)——名片<a href=https://www.elefans.com/category/jswz/34/1769858.html style=管理系统"/>

python自学笔记(四)——名片管理系统

接上一篇,python自学笔记(三)

综合应用:名片管理系统

增加、查找、删除、修改

依旧对应b站黑马600集的python教程~

准备工作:

  1. 新建 cards_main.py 保存 主程序功能代码
    程序的入口
    每一次启动名片管理系统都通过 main 这个文件启动

  2. 新建 cards_tools.py 保存 所有名片功能函数
    对名片的 新增、查询、修改、删除 等功能封装在不同的函数中

  • Pass

    如果在开发程序时,不希望立即编写分支内部的代码,可以使用 pass 关键字,表示一个占位符,能够保证程序的代码结构正确,程序运行时pass关键字不会执行任何操作

  • while True

    无限循环

  • TODO注释

    在 # 后跟上TODO,用于标记需要去做的工作,适用于团队开发等
    例:"# TODO(作者/邮件) 显示系统菜单“

保存名片的数据结构

  • 使用 字典 记录 每一张名片 的详细信息
  • 使用 列表 统一记录所有的 名片字典
  • cards_main.py文件
import cards_tools
# 无限循环,由用户选择退出
while True:#  显示功能菜单cards_tools.show_menu()action_str = input("请选择希望执行的操作: ")print("您选择的操作是 【%s】" % action_str)# 1,2,3 针对名片的操作if action_str in ["1","2","3"]:# 新增名片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("欢迎再次使用 名片管理系统!")break# 其他内容输入错误,需要提示用户else:print("您输入的不正确,请重新选择")
  • 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)def new_card():"""新增名片"""print("-" * 50)print("功能:新增名片")# 1.提示用户输入名片的详细信息name_str = input("请输入姓名: ")phone_str = input("请输入电话: ")qq_str = input("请输入QQ: ")email_str = input("请输入邮箱: ")# 2.使用用户输入的信息建立一个名片字典card_dict = {"name":name_str,"phone":phone_str,"qq":qq_str,"email":email_str}# 3.将名片字典添加到列表中card_list.append(card_dict)# 4.提示用户添加成功print("添加 %s 的名片成功!" % name_str)def show_all():"""显示所有名片"""print("-" * 50)print("功能:显示所有名片")# 判断是否存在名片记录if len(card_list)== 0:print("当前没有名片记录,请使用新增功能添加名片!")# 不使用return 使用if...else也可以return# 打印表头for name in ["姓名","电话","QQ","邮箱"]:# end="\t\t"末尾显示制表符print(name, end="\t\t")print("")# 打印分隔线print("-" * 60)# 遍历名片列表依次输出字典信息for card_dict in card_list:print("%s\t\t%s\t\t%s\t\t%s\t\t" %(card_dict["name"],card_dict["phone"],card_dict["qq"],card_dict["email"]))def search_card():"""搜索名片"""print("-" * 50)print("功能:搜索名片")# 1.提示用户输入要搜索的姓名find_name = input("请输入要搜索的姓名: ")# 2.遍历名片列表,查询要搜索的姓名,如果没找到,提示用户for card_dict in card_list:if card_dict["name"] == find_name:print("姓名\t\t电话\t\tQQ\t\t邮箱\t\t")print("-" * 60)print("%s\t\t%s\t\t%s\t\t%s\t\t" % (card_dict["name"],card_dict["phone"],card_dict["qq"],card_dict["email"]))# 处理卡片deal_card(card_dict)breakelse:print("抱歉,没有找到 %s" % find_name)def deal_card(find_dict):print("")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["phone"],"QQ:")find_dict["email"] = input_card_info(find_dict["phone"],"邮箱:")elif action_str == "2":card_list.remove(find_dict)print("删除成功!")def input_card_info(dict_value,tip_message):""":param dict_value: 传入的值:param tip_message: 提示信息"""# 1.提示用户实现内容result_str = input(tip_message)# 2.针对用户输入内容进行判断,如果输入了内容,返回内容if len(result_str)>0:return result_str# 3.如果没有输入内容,返回字典中原有值else:return dict_value

运行结果

更多推荐

python自学笔记(四)——名片管理系统

本文发布于:2024-02-17 03:18:03,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1692451.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:管理系统   名片   笔记   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!