当前位置 主页 > 服务器问题 > Linux/apache问题 >

    Python综合应用名片管理系统案例详解

    栏目:Linux/apache问题 时间:2020-01-04 01:17

    本文实例讲述了Python综合应用名片管理系统。分享给大家供大家参考,具体如下:

    综合应用已经学习过的知识点:

    变量 流程控制 函数 模块

    开发 名片管理系统

    系统需求

    程序启动,显示名片管理系统欢迎界面,并显示功能菜单
    **************************************************
    欢迎使用【名片管理系统】V1.0
    
    1. 新建名片
    2. 显示全部
    3. 查询名片
    
    0. 退出系统
    **************************************************
    
    用户用数字选择不同的功能 根据功能选择,执行不同的功能 用户名片需要记录用户的 姓名、电话、QQ、邮件 如果查询到指定的名片,用户可以选择 修改 或者 删除 名片

    步骤

    框架搭建 新增名片 显示所有名片 查询名片 查询成功后修改、删除名片 让 Python 程序能够直接运行

    01. 框架搭建

    目标

    搭建名片管理系统 框架结构 准备文件,确定文件名,保证能够 在需要的位置 编写代码 编写 主运行循环,实现基本的 用户输入和判断

    1.1 文件准备

    新建 cards_main.py 保存 主程序功能代码 程序的入口 每一次启动名片管理系统都通过 main 这个文件启动 新建 cards_tools.py 保存 所有名片功能函数 将对名片的 新增、查询、修改、删除 等功能封装在不同的函数中

    1.2 编写主运行循环

    在 cards_main 中添加一个 无限循环
    while True:
    
      # TODO(小明) 显示系统菜单
    
      action = input("请选择操作功能:")
    
      print("您选择的操作是:%s" % action)
    
      # 根据用户输入决定后续的操作
      if action in ["1", "2", "3"]:
        pass
      elif action == "0":
        print("欢迎再次使用【名片管理系统】")
    
        break
      else:
        print("输入错误,请重新输入")
    
    

    字符串判断

    if action in ["1", "2", "3"]:
    
    if action == "1" or action == "2" or action == "3":
    
    使用 in 针对 列表 判断,避免使用 or 拼接复杂的逻辑条件 没有使用 int 转换用户输入,可以避免 一旦用户输入的不是数字,导致程序运行出错

    pass

    pass 就是一个空语句,不做任何事情,一般用做占位语句 是为了保持程序结构的完整性

    无限循环

    在开发软件时,如果 不希望程序执行后 立即退出 可以在程序中增加一个 无限循环 由用户来决定 退出程序的时机

    TODO 注释

    在 # 后跟上 TODO,用于标记需要去做的工作
    # TODO(作者/邮件) 显示系统菜单
    

    1.3 在 cards_tools 中增加四个新函数

    def show_menu():
    
      """显示菜单
      """
      pass
    
    def new_card():
    
      """新建名片
      """
      print("-" * 50)
      print("功能:新建名片")
    
    
    def show_all():
    
      """显示全部
      """
      print("-" * 50)
      print("功能:显示全部")
    
    
    def search_card():
    
      """搜索名片
      """
      print("-" * 50)
      print("功能:搜索名片")
    
    

    1.4 导入模块

    在 cards_main.py 中使用 import 导入 cards_tools 模块
    import cards_tools
    

    修改 while 循环的代码如下:

    import cards_tools
    
    while True:
    
      cards_tools.show_menu()
    
      action = input("请选择操作功能:")
    
      print("您选择的操作是:%s" % action)
    
      # 根据用户输入决定后续的操作
      if action in ["1", "2", "3"]:
    
        if action == "1":
          cards_tools.new_card()
    
        elif action == "2":
          cards_tools.show_all()
    
        elif action == "3":
          cards_tools.search_card()
    
      elif action == "0":
        print("欢迎再次使用【名片管理系统】")
    
        break
      else:
        print("输入错误,请重新输入:")