python综合管理系统_Python-20 (信息系统-框架/循环/增删/综合应用)

#    1. 目标

这里我们通过简单案例的综合应用,了解框架的概念,感受循环、字符字典数据处理等基础点的应用场景

#    2. 框架

搭建一个人员信息管理系统的简单框架,初步感受框架的概念。

1> 主程序

-- cards_mian.py程序的主功能代码;程序的入口

定义实现的功能,主程序的基本信息(名称、功能、结构)

2> 功能程序

-- cards_tools.py 定义封装功能函数(新增、查询、修改、删除);为主程序提供功能模块支持837ecbb7be5bee05d669ab1a9893eb2cc470dc0a.png文件定义

#    3. 主程序

主程序是框架,需要定义清楚所有架构,为提高代码有效性,其中的分支功能可由功能程序封装提供。

简单的人员信息管理,提供主功能菜单:

[1]:新增 [2]:显示全部 [3]:查询 [0]:退出

1> 编写循环框架

while 循环:控制程序选择(1,2,3)对应功能入口

if..else:判断分支功能dbaaa415f6542b6e538db594e686c919e0135482.png基本框架

2> if 嵌套完善框架

-- TODO 注释功能:标注需要完善的功能

-- if 嵌套:搭建嵌套分支框架06fc7383d9aae80d2815380c4ac79a24bb1782ce.pngif嵌套

3> 功能函数程序

在功能程序中定义表头函数,由主程序调用,实现显示主菜单的功能

定义  show_meau() 函数

show_meau()函数:实现打印系统功能主菜单dc2cb15f54703a9cb3246af1828376645b4af1d0.png定义主菜单功能函数

4> 定义分支功能函数

分别定义三个函数,由主程序调用,完成分支语句的功能

new_card():新增信息

show_card():显示全部

search_card():查询信息c22de7768fa60973b72d70a080712130cdbd6f62.png定义函数功能

dfc96d5ca9c4c8fb1d72a9791e75e8e322bdfe62.png分支语句调用

主程序的框架由以上模块组成,其中分支细节功能,在功能程序中定义实现。

#    4. 功能程序

功能程序中将 所有定义函数封装为模块,由主程序调用来实现对应的功能。c19596547e428c07c927602f6726f8ec125df535.png功能程序中函数模块的定义

1> show_menu()

功能:显示系统主菜单

2> new_card()

功能:新增人员信息并存储

-- input 输入内容

-- card_dic 字典来存储人员信息

-- append 将字典追加到列表中ff62c667a3bb967ac6206df95cc5f0d3eb6afd73.png新增函数

3> show_card()

功能:显示全部人员信息

-- 使用if判断列表是否有值,如果无值则不执行后续代码

-- return 返回,return后续代码不执行

-- for 循环打印表的名称

-- end=''\t\t'' 两个制表符,列名称间具有标准间距

-- for循环遍历列表中字典的数据,保持制表符格式输出b4da350793d5b2e9173ff41ae4b2dd6d4b4440ee.png显示全部信息

4> search_card()

功能:查询

-- 定义要查询的信息

-- 遍历字典是否存在查找的信息

-- TODO标记,后续封装一个单独修改删除的函数71ed23fee99b8623f03a73af507caffb05ef6a92.png查询函数

5> deal_card()

功能:对找到的字典值进行修改删除操作,封装调用f6660a0c2b2476948bffffc0c010b39a45b5c0e9.png字典数值处理

6> deal_card()

功能:判断输入的值是否做了修改,未修改则返回字典原有的值88c55114415e0affa2c1f11b61ab722641635983.png判断字典输入内容

以上为整个案例的所有模块,做好函数功能描述说明文档。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/446155.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

本地搭建server和客户端使用端口进行数据通信,使用Wireshark抓取127.0.0.1环回地址并分析通信数据

本地搭建服务端和客户端 参考网址 Socket代码实现服务端 和 客户端之间通信_CHYabc123456hh的博客-CSDN博客server指定通信的端口是 5099client 使用的端口是动态变化的,因此在wireshark里面需要设定的抓取端口是 5099 使用wireshark开启抓包 参考链接 [tcp] Wir…

double operator[](int i)_java中double类型精度丢失问题及解决方法

原文链接:https://blog.csdn.net/yacolspace/article/details/78287394double类型数据加减操作精度丢失问题今天在项目中用到double类型数据加减运算时,遇到了一个奇怪的问题,比如120.2300.03,理论上结果应该是321.23,…

验证客户端和服务端可以传输经SM4加密的密文数据,从而验证发送数据已使用服务器密码机进行SM4加密,而不是随便的字符串乱码

前提操作 搭建客户端和服务端 Socket代码实现服务端 和 客户端之间通信_CHYabc123456hh的博客-CSDN博客使用wireshark进行数据的监听和测试https://blog.csdn.net/CHYabc123456hh/article/details/121929288 结论验证 使用在线SM4加密,输入明文 和 选择模式,生成…

Socket编程 涵盖代码和函数参数介绍

Socket是针对端系统,也就是用户主机上开发程序,不涉及网络设备(交换机、路由器)独立于网卡驱动层之上,不涉及硬件,即基于Packet Driver编程端:是指通信双方两台电脑 应用编程接口API 也就是两端 应用层内部的应用进程之…

springcloud阿里巴巴五大组件_如何无缝迁移 SpringCloud/Dubbo 应用到 Serverless 架构

简介: 本文分为三部分来介绍,分别介绍微服务应用迁移到 SAE 的优势,如何迁移 SpringCloud/Dubbo 应用到 SAE 上,以及针对 SpringCloud 应用迁移的实践演示。背景通过前面几节课程的学习,相信大家对于 SAE 平台已经有了…

frame中src怎么设置成一个变量_Go 语言设计哲学之七:变量声明须一致

Go 语言,使用变量之前需要先进行变量的声明。var s string “Golang"n : 666Go 语言有两类变量包级别(package varible):在 package 级别可见的变量。如果是导出变量,该变量也可以被视为全局变量;局部变量(local varible)&a…

getdevicecaps在哪个头文件里_一招定胜负,while (true) 和 for (;;) 到底哪个更快

在JDK8u的jdk项目下做个很粗略的搜索:mymbp:/Users/me/workspace/jdk8u/jdk/src$ egrep -nr "for (s?;s?;" . | wc -l 369mymbp:/Users/me/workspace/jdk8u/jdk/src$ egrep -nr "while (true" . | wc -l 323并没有差多少。其次&#…

SM4 ECB加密模式 数据对比试验论证

程序如下 开启服务器密码机,调用SM4加密函数,需要注意的是程序输入的数据全部使用Hex 十六进制的格式 Key IV Data IV 00000000000000000000000000000000Source(加密数据) char input_date[] {a,a,a,a,.......} Ascll编码 需要转16进制input_data …

二分法查找c语言程序_C语言的那些经典程序 第十四期

戳“在看”一起来充电吧!C语言的那些经典程序 第十四期本期小C给大家带来三个用C语言解决实际问题的典例。如果全都理解,相信肯定能给大家带来收获!接下来让我们看看是哪些程序吧!1字符查找源程序:运行结果:程序分析:该…

centos网络隔一段时间就断_计算机网络总结

POST跟GET的区别作用GET用于获取资源,而POST用于传输实体参数GET的参数以字符串的格式出现在URL中,而POST的参数存储在请求实体中。因为URL只支持ASCII码,故GET的参数如果存在中文等字符就需要先进行编码,POST参考支持标准字符集。…

使用wireshark抓包,本地环回测试通信数据已经通过SM4国密算法加密

具体操作 本实验采用 本地环回测试开启wireshark抓包工具,设定端口号 tcp.port 5099 (5099为服务端对外开启服务的端口号),不可以使用ip.addr指定ip地址,因为本地环回测试,相关信息太多,使用端…

public 函数_UE4精品教程 | 渲染编程(C++篇)【第三卷:从仿函数到std::function再到虚幻4Delegate】...

本文转载于YivanLee知乎作者专题目录链接:https://zhuanlan.zhihu.com/p/67694999这几天研究了一下虚幻4的delegate,但是想要理解这个,还得从仿函数说起。下面是一段代码例子:class MyFunctor{ public: int operator()(int …

C语言深度剖析书籍学习记录 第一章 关键字

C语言标准定义了32个关键字 union声明联合数据类型 Union declaration - cppreference.com维护足够的空间来置放多个数据成员中的“一种”,而不是为每一个数据成员配置空间,在 union 中所有的数据成员共用一个空间,同一时间只能储存其中一个…

js页面自适应屏幕大小_移动端自适应布局方法的calc()与vw

前端人员在处理移动端自适应布局时,目前前端最流行的方法应该就是使用媒体查询,来设置HTML的字体大小,然后用rem为单位对Dom的宽高进行设置,这个方法的优势在于兼容性方面很好,劣势则在于当前市场上不同的机型太多&…

C语言深度剖析书籍学习记录 第二章 符号

\ 连接符号,// \ 可以把下一行也注释调编译器 删除注释时,会使用空格进行替代

详细描述三个适于瀑布模型的项目_IT项目管理笔记——方法选择和软件评估

一、管理需求为什么要管理需求?避免失败,提高项目的成功率和需求管理所带来的其他好处软件生命周期中,一个错误发现得越晚,修复错误的费用越高许多错误是潜伏的,并且在错误产生后很长一段时间才被检查出来在需求阶段&a…

Socket通信 客户端加密数据,传递数据密文到服务端,服务端解密密文 输出明文

server // sdf_cpp_warpper.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // server端#ifndef UNICODE #define UNICODE #endif#define WIN32_LEAN_AND_MEAN#include <iostream> #include <string> #include <sstream> #include …

主进程中发生了一个javascript错误_知道html5 Web Worker标准吗?能实现JavaScript的多线程?

js为什么是单线程&#xff1f;主要是因为最开始javascript是单纯的服务于浏览器的一种脚步语言(那时候没有nodejs)。浏览器是为了渲染网页&#xff0c;通过dom与用户交互&#xff0c;如果一个线程需要给dom执行click事件&#xff0c;而另一个进程要删除这个dom&#xff0c;这2个…

C语言深度剖析书籍学习记录 第三章 预处理

宏 _LINE_ 表示正在编译的文件的行号_FILE_ 表示正在编译的文件的名字_DATE_ 表示编译时刻的日期字符串&#xff0c;例如: "25 Dec 2007"_TIME_ 表示编译时刻的时间字符串&#xff0c;例如: "12:30:55"_STDC_ 判断该文件是不是定义成标准 C 程序宏名的书写…