python基础(十三、综合应用

14.综合应用 - 名片管理系统
1)框架搭建
搭建名片管理系统框架结构
准备文件,确定文件名,保证能够在需要的位置编写代码
编写主运行循环,实现基本的用户输入和判断
(1)文件准备
①新建cards_main.py,保存主程序功能代码
程序的入口
每一次启动名片管理系统都通过 main 这个文件启动
②新建cards_tools.py,保存所有名片功能函数
将对名片的 新增、查询、修改、删除 等功能封装在不同的函数中

(2)编写主运行循环
在cards_main中添加一个无限循环

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

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

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

④TODO 注释
在#后跟上TODO,用于标记需要去做的工作
格式:

TODO(作者/邮件) 显示系统菜单

(3)在cards_tools中增加四个新函数

(4)导入模块
在 cards_main.py 中使用 import 导入 cards_tools 模块
修改 while 循环的代码如下:

至此:cards_main 中的所有代码全部开发完毕!

(5)完成 show_menu 函数

2)保存名片数据的结构
程序就是用来处理数据的,而变量就是用来存储数据的
使用字典记录每一张名片的详细信息
使用列表统一记录所有的名片字典

定义名片列表变量
在cards_tools文件的顶部增加一个列表变量

注意:所有名片相关操作,都需要使用这个列表,所以应该定义在程序的顶部
程序刚运行时,没有数据,所以是空列表

3)新增名片
(1)功能分析
①提示用户依次输入名片信息
②将名片信息保存到一个字典
③将字典添加到名片列表
④提示名片添加完成

(2)实现 new_card 方法

技巧:在PyCharm中,可以使用SHIFT + F6统一修改变量名

4)显示所有名片
(1)功能分析
迭代遍历名片列表,顺序显示每一个字典的信息

(2)代码实现

(3)增加标题和使用“ ”显示

(4)增加没有名片记录判断
插入红框内的判断语句即可。此处也可以用if else,但用return修改量最小,语句也更精简

注意:
①在函数中使用“return”表示返回
②如果在“return”后没有跟任何内容,只是表示该函数执行到此就不再执行后续的代码

5)查询名片
(1)功能分析
①提示用户要搜索的姓名
②根据用户输入的姓名遍历列表
③搜索到指定的名片后,再执行后续的操作

(2)代码实现
①查询功能实现

②增加名片操作函数:修改/删除/返回主菜单

6)修改和删除
(1)查询成功后删除名片
由于找到的字典记录已经在列表中保存
要删除名片记录,只需要把列表中对应的字典删除即可

(2)修改名片
由于找到的字典记录已经在列表中保存
要修改名片记录,只需要把列表中对应的字典中每一个键值对的数据修改即可

(3)修改名片细化
如果用户在使用时,某些名片内容并不想修改,应该如何做呢?
系统提供的input函数不能满足需求,那么就新定义一个函数input_card_info对系统的input函数进行扩展

自定义的输入方法:

(4)添加函数的注释

7)Linux上的Shebang符号(# !)
(1)shebang的概念
“# !”这个符号叫做Shebang或者Sha-bang,Shebang通常在Unix系统脚本的中第一行开头使用,指明执行这个脚本文件的解释程序
(2)使用 Shebang 的步骤
①使用which查询python3解释器所在路径

②修改要运行的主python文件,在第一行增加以下内容

③修改主 python文件的文件权限,增加执行权限

④在需要时执行程序即可

注意:在windows下编辑的文件,在linux中运行时会报错。

原文地址:https://www.cnblogs.com/bdzxh/p/14061673.html