【Python】生死簿管理系统,估值5毛

生死簿管理系统

代码

"""
生死簿管理系统
"""
import os
import timefile_name = 'data.txt'def main():while True:main_menu()choice = (int)(input("请选择: "))if choice in [0, 1, 2, 3, 4, 5, 6, 7]:if choice == 0:answer = input("确定要退出生死簿系统吗?y/n ")if answer.lower() == 'y':print("已退出!!!")breakelse:continueelif choice == 1:add()passelif choice == 2:passelif choice == 3:delete()passelif choice == 4:passelif choice == 5:passelif choice == 6:passelif choice == 7:passelse:print("")def main_menu():print("=============================生死簿管理系统=============================")print("-----------------------------功能菜单-----------------------------")print("1.录入人员")print("2.查找人员")print("3.删除人员")print("4.修改人员")print("5.排序")print("6.统计总人数")print("7.查询所有")print("0.退出")print("----------------------------------------------------------------")def add():person = {}while True:person_id = input("请输入人员ID: ")if not id:print("id不能为空")continueelse:person["id"] = person_idbreakwhile True:name = input("请输入人员姓名: ")if not name:print("id不能为空")continueelse:person["name"] = namebreakwhile True:num = input("请输入人员阳寿: ")if not num:print("阳寿不能为空")continueelse:person["num"] = numbreak# 保存数据save_data(person)# 是否继续添加s = input("是否继续添加人员?y/n ")if s.lower() == 'y':add()else:main()passdef save_data(person):print("数据保存中。。。")try:# 追加file_stream = open(file_name, 'a', encoding="utf-8")except Exception as e:# 写入file_stream = open(file_name, 'w', encoding="utf-8")print("数据保存成功。。。")# 写入 数据状态person['yn'] = 1# 创建时间person['create_time'] = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())file_stream.write(str(person) + "\n")# 关闭文件file_stream.close()passdef search():passdef delete():while True:person_id = input("请输入要删除的人员ID:")person_list = []if person_id != '' and person_id is not None:if os.path.exists(file_name):with open(file_name, 'r', encoding="utf-8") as file:person_list = file.readlines()else:pass# 定义是否被删除del_flag = Falseif person_list:# w模式会清空内容with open(file_name, 'w', encoding="utf-8") as wfile:for item in person_list:# 转为dict类型d = dict(eval(item))if d['id'] != person_id:wfile.write(str(d) + "\n")else:del_flag = Trueif del_flag:print(f"ID为{person_id}的人员已删除!!!")else:print(f'ID为{person_id}的人员不存在!!!')else:print(f'ID为{person_id}的人员不存在!!!')breakquery_all()while True:answer = input("是否继续删除?y/n ")if answer == '' or answer is None:continueelse:breakif answer.lower() == 'y':continueelse:breakelse:print("ID不能为空")passdef modify():passdef sort():passdef total():passdef query_all():passif __name__ == '__main__':main()

打包可执行文件

pip3 install PyInstallerpyinstaller -F /Users/kw/kwzone/Python/code/python-hello/实操篇/BookOfLifeAndDeath/bookmgr.py

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

「树形」样式,数据关联超便捷丨三叠云

树形样式 路径 表单设计 >> 字段属性 功能简介 「表单关联」的数据列表样式支持「树形」样式功能,关联数据选择时通过「树形」的列表方式进行数据选择,提高生产效率。 使用场景: 可以通过树形列表样式展示部门、子部门、成员的树形…

30㎡新中式大横厅|方寸之间,诉说东方写意生活。福州中宅装饰,福州装修

今天要分享的是一个新中式风格的客厅装修,它的开间是4.5米,进深是6.5米。设计中有许多亮点,让我们一起来看看。 1️⃣ 首先,这个客厅采用了双眼皮无主灯吊顶的设计,让整个空间看起来更加高挑宽敞。吊顶的边缘线条简洁明…

Re53:读论文 How Can We Know What Language Models Know?

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文名称:How Can We Know What Language Models Know? ArXiv网址:https://arxiv.org/abs/1911.12543 官方GitHub项目(prompt之类的都有):https:…

详解Rust编程中的生命周期

1.摘要 生命周期在Rust编程中是一个重要概念, 它能确保引用像预期的那样一直有效。在Rust语言中, 每一个引用都有其生命周期, 通俗讲就是每个引用在程序执行的过程中都有其自身的作用域, 一旦离开其作用域, 其生命周期也宣告结束, 值不再有效。幸运的是, 在绝大多数时间里, 生…

15 reids哨兵机制

redis主机默认是10s发送一次心跳给从节点。 从节点默认1s去发送心跳给主节点。 1、原理 当主节点出现故障时,由Redis Sentinel自动完成故障发现和转移,并通知应用方,实现高可用性。 从节点的主要两个作用: 主节点的数据备份。…

【2023年APMCM亚太杯C题】完整代码+结果分析+论文框架

2023年APMCM亚太杯C题 完整代码结果分析论文框架第一问问题分析技术文档1 基于AHP的新能源汽车发展影响因素分析1.1 AHP模型的构建1.2 AHP模型的求解 2 基于自适应ARIMA-非线性回归模型的影响因素预测2.1 ARIMA模型的建立2.2 非线性回归模型的建立2.3 自适应混合ARIMA-非线性回…

【数据结构/C++】线性表_顺序表的基本操作

#include <iostream> using namespace std; #define MaxSize 10 // 1. 顺序表 // 静态分配 typedef struct {int data[MaxSize];int length; // 当前长度 } SqList; // 静态分配初始化顺序表 void InitList(SqList &L) {for (int i 0; i < MaxSize; i){L.data[i]…

政务大数据与资源平台建设解决方案:PPT全文75页,附下载

关键词&#xff1a;智慧政务解决方案&#xff0c;大数据解决方案&#xff0c;数据中心解决方案&#xff0c;数据治理解决方案 一、政务大数据与资源平台建设背景 1、政务大数据已成为智慧城市建设的必要基础 为响应国家不断加快5G基建、大数据、人工智能等新型基础设施建设布…

Redis的性能,哨兵模式,集群,

Redis的性能管理; redis的数据保存在内存中 redis-cli info memory redis内存使用info memory命令参数解析 used_memory:236026888 由 Redis 分配器分配的内存总量&#xff0c;包含了redis进程内部的开销和数据占用的内存&#xff0c;以字节&#xff08;byte&#xff09…

虚拟化原理

目录 什么是虚拟化广义虚拟化狭义虚拟化 虚拟化指令集敏感指令集虚拟化指令集的工作模式监视器对敏感指令的处理过程&#xff1a; 虚拟化类型全虚拟化类虚拟化硬件辅助虚拟化 虚拟化架构裸金属架构宿主机模式架构 什么是虚拟化 虚拟化就是通过模仿下层原有的功能模块创造接口来…

【开源】基于JAVA的衣物搭配系统

项目编号&#xff1a; S 016 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S016&#xff0c;文末获取源码。} 项目编号&#xff1a;S016&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 衣物档案模块2.2 衣物搭配模块2.3 衣…

常用数据存储格式介绍:Excel、CSV、JSON、XML

在现代数字时代&#xff0c;数据经过提炼后可以推动创新、简化运营并支持决策流程。然而&#xff0c;在提取数据之后&#xff0c;并将其加载到数据库或数据仓库之前&#xff0c;需要将数据转化为可用的数据存储格式。本文将介绍开发者常用的4种数据存储格式&#xff0c;包括 Ex…

布局下一个时代,UTONMOS夯实元宇宙发展基础

从 PC 互联网到移动互联网&#xff0c;再到元宇宙&#xff0c;互联网的发展在一直不断演变和升级着。元宇宙的时代红利将带来从底层基础设施向外延展到用户体验的全面升级。 人们以各自不同视角理解元宇宙。但我们认为&#xff0c;目前学术界和产业界对元宇宙虽然没有统一规范的…

css引入的三种方式

css引入的三种方式 一、内联样式二、外部样式表三、 内部样式表总结trouble 一、内联样式 内联样式也被称为行内样式。它是将 CSS 样式直接应用于 HTML 元素的 style 属性中的一种方式 <p style"color: blue; font-size: 16px;">这是一个带有内联样式的段落。&…

Modbus RTU转Profinet网关连接PLC与变频器通讯在机床上应用案例

背景&#xff1a;以前在机床加工车间里&#xff0c;工人们忙碌地操作着各种机床设备。为了使整个生产过程更加高效、流畅&#xff0c;进行智能化改造。 方案&#xff1a;在机床上&#xff0c;PLC通过Modbus RTU转Profinet网关连接变频器进行通讯&#xff1a;PLC作为整个生产线…

【封装UI组件库系列】封装Icon图标组件

封装UI组件库系列第三篇封装Icon图标组件 &#x1f31f;前言 &#x1f31f;封装Icon 1.创建Icon组件 2.引用svg图标库 第一步 第二步 第三步 3.二次封装 4.封装自定义属性 &#x1f31f;总结 &#x1f31f;前言 在前端开发中&#xff0c;大家可能已经用过各种各样的UI组…

VUE项目部署过程中遇到的错误:POST http://124.60.11.183:9090/test/login 405 (Not Allowed)

我当初报了这个405错误&#xff0c;再网上查了半天&#xff0c;他们都说什么是nginx部署不支持post访问静态资源。 但后面我发现我是因为另一个原因才导致的无法访问。 我再vue中有使用devServer:{ proxy:{} }进行路由转发。 但是&#xff01;&#xff01; 在这个配置只…

接口测试学习路线

接口测试分为两种&#xff1a; 测试外部接口&#xff1a;系统和外部系统之间的接口 如&#xff1a;电商网站&#xff1a;支付宝支付 测试内部接口&#xff1a;系统内部的模块之间的联调&#xff0c;或者子系统之间的数据交互 测试重点&#xff1a;测试接口参数传递的正确性&…

node与 pnpm、node-sass 等工具的版本兼容关系

1. node & pnpm 2. node & node-sass 3. node-sass & sass-loader sass-loader依赖于node-sass&#xff0c;以下是部分版本号对应

Zookeeper 集群中是怎样选举leader的

zookeeper集群中服务器被划分为以下四种状态&#xff1a; LOOKING&#xff1a;寻找Leader状态。处于该状态的服务器会认为集群中没有Leader&#xff0c;需要进行Leader选举&#xff1b;FOLLOWING&#xff1a;跟随着状态&#xff0c;说明当前服务器角色为Follower&#xff1b;LE…