当前位置: 首页 > news >正文

python-学生管理|汉罗塔

1.编写程序,实现学生信息管理系统。

运行程序,在控制台输入“1”之后的结果如下所示:
==============================
学生管理系统
1.添加学生信息
2.删除学生信息
3.修改学生信息
4.显示所有学生信息
0.退出系统
==============================
请选择功能:1
请输入新学生的姓名:小红
请输入新学生的性别:女
请输入学生的手机号码:123456

结果展示
在这里插入图片描述


def sayHello():print("="*20+'\n'+'欢迎使用通讯录\n'+'1.添加学生信息\n'+'2.删除学生信息\n'+'3.修改学生信息\n'+'4.显示所有学生信息\n'+'5.退出系统\n'+'='*20+'\n')
def add(data):name=input("请输入新学生的姓名:")sex = input("请输入新学生的性别:")phone = input("请输入学生的手机号码:")data.append({'name':name,'sex':sex,'phone':phone})print(f"保存成功:{name}")
def show(data):if(len(data)==0):print("没有联系人")else:print(f"所有联系人:\n")for i in data:print(f"{i}")print("="*20)
def delD(data):name=input("请输入删除人姓名:")flag=Falsefor i in range(len(data)):if(data[i]['name']==name):data.pop(i)print("删除成功")flag=Trueif flag==False:print("删除失败,用户不存在")
def change(datas):if(len(datas)!=0):name = input('请输入修改人姓名:')flag=Falsefor i in range(len(datas)):if(datas[i]['name']==name):inType=input("请输入要修改的选项:【name,sex,phone】")if inType in ['name','phone','sex']:new=input("请输入要修改的值")data[i][inType]=newflag=Trueif flag==False:print("该人不存在,请重新输入")change(name)else:print("现在还没有联系人")
if __name__=="__main__":sayHello()data = []num=int(input("请选择功能:\n"))while(True):if(num==1):add(data)elif(num==2):delD(data)elif(num==3):change(data)elif(num==4):show(data)else:breakinp=input("请输入功能序号:")if(inp.isdigit()):num=int(inp)else:print("输入错误,程序退出")num=0

2.汉罗塔

def move(n,start,mid,end):if n==1:print(f"{n}from {start} to {end}")else:move(n-1,start,end,mid)print(f"{n} from {start} to {end}")move(n-1,mid ,start,end)if __name__=="__main__":n=3move(3,'A','B','C')

相关文章:

python-学生管理|汉罗塔

1.编写程序,实现学生信息管理系统。 运行程序,在控制台输入“1”之后的结果如下所示: 学生管理系统 1.添加学生信息 2.删除学生信息 3.修改学生信息 4.显示所有学生信息 0.退出系统 请选择功能:1 请输入新学生的姓名:小红 请输入…...

python 堆与栈

【一】堆与栈 【 1 】简介 栈(stack),有些地方称为堆栈,是一种容器,可存入数据元素、访问元素、删除元素,它的特点在于只能允许在容器的一端(称为栈顶端指标,英语:top&a…...

园区规划技术要点

(一)技术点介绍 1.WLAN:无线局域网WLAN(Wireless Local Area Network)是一种无线计算机网络,使用无线信道代替有线传输介质连接两个或多个设备形成一个局域网LAN(Local Area Network&#xff09…...

深入浅出 Linux 中的 ARM IOMMU SMMU III

系统 I/O 设备驱动程序通常调用其特定子系统的接口为 DMA 分配内存,但最终会调到 DMA 子系统的 dma_alloc_coherent()/dma_alloc_attrs() 等接口。dma_alloc_coherent()/dma_alloc_attrs() 等接口通过 DMA IOMMU 的回调分配内存,并为经过 IOMMU 的 DMA 内…...

Linux系统---图书管理中的同步问题

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 《LeedCode刷题》 键盘敲烂,年薪百万! 一、问题描述 (1)图书馆阅览室最多能够容纳N(N5)名学生,若有更多学生想…...

Vue学习笔记-activated和deactivated生命周期

作用 路由组件所独有的2个生命周期 activated生命周期函数用于在路由组件每次由消失到出现时所调用的函数deactivated生命周期函数用于路由组件每次由出现到消失时(无论是否缓存)所调用的函数 案例 定义一个NewsVue组件,要求:…...

102.套接字-Socket网络编程4(TCP通信流程)

目录 TCP编程流程 套接字函数 1.创建套接字 2.绑定地址 3.监听连接请求 4.接受连接 5. 连接到服务器 6. 发送数据 7. 接收数据 8.关闭套接字 服务器端通信流程 示例代码 客户端通信流程 代码示例 TCP编程流程 TCP是一个面向连接的,安全的,流…...

spring boot 2 升级到 spring boot 3 后文件上传失败

背景 项目需要,要求升级 spring boot 2.7 到 spring boot 3.2,升级过程中发现很多不兼容问题,下面说明文件上传失败的解决方案。 问题 spring boot 2 中不需要额外的配置,直接在 Controller 中配置 MultipartFile 接收页面传的…...

Java Stream API 提供了一种非常方便的方式来比较两个 List 的差异,并取出不同的对象

Java Stream API 提供了一种非常方便的方式来比较两个 List 的差异,并取出不同的对象。这可以通过使用 distinct() 和 filter() 方法来实现。 假设我们有两个 List,一个是 list1,另一个是 list2,我们想找出 list1 中存在但 list2…...

C语言还会存在多久

一、C语言的生命力 在当前的科技发展和就业市场需求下,可以肯定地说C语言并没有像一些新兴语言(如Python、JavaScript等)那样受到大量的关注。然而,并不意味着学习C语言的人会越来越少。 首先,C语言作为一种深受尊重…...

手持式安卓主板_PDA安卓板_智能手持终端方案

手持式安卓主板方案是一种智能终端设备,具备自动对焦和闪光灯功能,可以在昏暗的环境下快速扫描二维码并轻松采集数据。该方案还提供多渠道支付和数据采集功能,为用户提供了便捷的体验。 该方案的产品基于手持式安卓主板,并搭载了八…...

LeetCode103. Binary Tree Zigzag Level Order Traversal

文章目录 一、题目二、题解 一、题目 Given the root of a binary tree, return the zigzag level order traversal of its nodes’ values. (i.e., from left to right, then right to left for the next level and alternate between). Example 1: Input: root [3,9,20,n…...

PHP 判断给定两个时间是否在同一周,月,年

判断是否在同一周 date_default_timezone_set(PRC); //判断是否在同一周,原理:求出其中一个时间戳所在周的周一凌晨时间戳和周日24.00时间戳,如果另一个时间戳在这个范围内,则说明在同一周,否则不在同一周 function g…...

单机无锁线程安全队列-Disruptor

Disruptor 1、基本介绍 说到队列,除了常见的mq中间件,java中也自带线程安全的BlockingQueue,但是BlockingQueue通过在入队和出队时加锁的方式避免并发操作,性能上会大打折扣。 而Disruptor是一个线程安全、低延迟、吞吐量高的队…...

好工具知多少:国内外最常用的SCADA软件

随着现代SCADA系统的发展,工业自动化取得了巨大的飞跃。如今,监控和数据采集(SCADA)系统已成为工业过程的重要组成部分。这些系统使操作员能够实时监控和控制复杂的系统。 SCADA系统正在广泛的行业中发挥着至关重要的作用&#x…...

SQL Server 2016(创建数据库)

1、实验环境。 某公司有一台已经安装了SQL Server 2016的服务器,现在需要新建数据库。 2、需求描述。 创建一个名为"db_class"的数据库,数据文件和日志文件初始大小设置为10MB,启用自动增长,数据库文件存放路径为C:\db…...

Vue学习计划--Vue2(一)简单了解vue

Vue2的终止支持时间为2023年12月31日。 在这个矛盾的时间点,还是决定先把vue2的笔记放出来,在Vue2完结后再把Vue3的笔记补上。这样呢,2和3都不落下,也算是来一个启承的作用吧。在工作中呢,旧的项目可以维护&#xff0c…...

微信小程序生成二维码并保存到本地方法

微信小程序生成二维码请保存到本地方法 官方weapp-qrcode插件 github链接 功能完成样子 wxml <view class"qrcode"><canvas style"width: 275px; height: 275px;" canvas-idmyQrcode></canvas> </view> <view class" …...

shell_exec 和 exec区别

shell_exec 和 exec 都是用于在 PHP 中执行系统命令的函数&#xff0c;但它们之间有一些区别。 返回值类型&#xff1a;shell_exec 函数返回命令的输出结果作为字符串&#xff0c;而 exec 函数将输出结果存储在数组中。 输出结果&#xff1a;shell_exec 函数返回命令的完整输出…...

WPF创建进度条

使用wpf做一个原生的进度条&#xff0c;进度条上面有值&#xff0c;先看效果。 功能就是点击按钮&#xff0c;后台处理数据&#xff0c;前台显示处理数据的变化&#xff0c;当然还可以对进度条进行美化和关闭的操作&#xff0c;等待后台处理完毕数据&#xff0c;然后自动关闭。…...

全网最新最全面的Appium自动化:Appium常用操作之混合应用webview页面操作--待补充!

上下文操作&#xff1a; 在appium中&#xff0c;对于混合应用&#xff0c;需要进行WebView页面和原生应用的切换 常用的方法如下&#xff1a; 1、context(self) / current_context(self)&#xff1a;返回当前会话的当前上下文&#xff0c;context可以理解为可进入的窗口。对于…...

基于OpenCV+YOLOv5实现车辆跟踪与计数(附源码)

导 读 本文主要介绍基于OpenCVYOLOv5实现车辆跟踪与计数的应用&#xff0c;并给出源码。 资源下载 基础代码和视频下载地址&#xff1a; https://github.com/freedomwebtech/win11vehiclecount main.py代码:​​​​​​​ import cv2import torchimport numpy as npfrom tr…...

05、pytest断言确定的异常

官方用例 # content of test_sysexit.py import pytestdef f():raise SystemExit(1)def test_mytest():with pytest.raises(SystemExit):f()解读与实操 ​ 标准python raise函数可产生异常。pytest.raises可以断言某个异常会发现。异常发生了&#xff0c;用例执行成功&#x…...

金蝶云星空单据编辑界面,不允许批量填充操作

文章目录 金蝶云星空单据编辑界面&#xff0c;不允许批量填充操作案例演示开发设计测试 金蝶云星空单据编辑界面&#xff0c;不允许批量填充操作 案例演示 售后单&#xff0c;明细信息单据体&#xff0c;物料编码字段禁止批量填充。 开发设计 编写表单插件&#xff0c;在Be…...

Springboot项目启动成功后可通过五种方式继续执行

实现CommandLineRunner接口 项目初始化完毕后&#xff0c;才会调用方法&#xff0c;提供服务 Component public class StartRunner implements CommandLineRunner {Overridepublic void run(String... args) throws Exception {System.out.println("CommandLineRunner&qu…...

什么是供应链金融分账系统?

一、供应链金融的重要性 供应链金融在很多行业都是要用到,比如在抖音,快手店铺的商家资金回笼,通常需要7-21天的回款周期,这对于商家的周转来说是一件很困难的事情,在供应链金融中&#xff0c;分账就扮演着至关重要的角色&#xff0c;不仅是金融流程中的一环&#xff0c;更是保…...

【测绘程序设计】——坐标换带与高程投影

测绘工程中经常遇到 “坐标换带” 与 “高程投影” 问题,前者是在改变投影的分带号——即投影的中央子午线,通过 “(x,y)->(B,L)->(x,y)” 进行;而后者则是为减小投影变形(高程投影变短、高斯投影变长,详情可参考博客《测绘综合能力》真题易错本 第(37)条)通过平…...

企业计算机服务器中了Mallox勒索病毒如何解密,Mallox勒索病毒数据恢复

随着计算机技术的不断应用与发展&#xff0c;网络为企业的生产运营提供了极大帮助&#xff0c;越来越多的企业开始利用网络办公&#xff0c;因此&#xff0c;随之而来的网络安全威胁也在不断增加。近期&#xff0c;云天数据恢复中心陆续接到很多企业的求助&#xff0c;企业的计…...

一套rk3588 rtsp服务器推流的 github 方案及记录 -01

我不生产代码&#xff0c;我只是代码的搬运工&#xff0c;相信我&#xff0c;看完这个文章你的图片一定能变成流媒体推出去。 诉求&#xff1a;使用opencv拉流&#xff0c;转成bgr数据&#xff0c;需要把处理后的数据&#xff08;BGR&#xff09;编码成264&#xff0c;然后推流…...

PyQt6 QComboBox下拉组合框控件

​锋哥原创的PyQt6视频教程&#xff1a; 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计34条视频&#xff0c;包括&#xff1a;2024版 PyQt6 Python桌面开发 视频教程(无废话…...

有哪些网站主页做的比较好看/搜索引擎营销优缺点

库内新增对象Products 的流程说明&#xff1a;第一步&#xff1a; com.jeecms.cms.entity.assist.base下建立模型基础类&#xff0c;BaseCmsProducts.java com.jeecms.cms.entity.assist 下建立对象类继承继承模型&#xff0c;CmsProducts.java com.jeecms.cms.entity.assist.…...

南昌网站建设公司资讯/上海seo服务

瓷介电容的介质是陶瓷&#xff0c;陶瓷的特点抗机械应力的能力差&#xff0c;抗温度梯度的能力差。在使用瓷介电容器时要尽量避免电容的两个电极受到异常的机械应力和温度应力而导致电容器内部产生裂纹而失效。一、瓷介电容内部的结瘤问题结瘤问题是瓷介电容制造过程中&#xf…...

做推广网站多少钱/百度新闻最新消息

环境是使用lnmp一键安装包搭建的&#xff1b;1 首先去这个网站下载证书&#xff1a;免费ssl证书最终会得到两个文件2&#xff1a;在/usr/local/nginx/conf创建cert目录把这两个文件放进去&#xff0c;这个地址后面有用。编辑/usr.local/nginx/conf/nginx.conf:添加下面这段&…...

阜阳市建设工程质量检测站网站/河南seo优化

为什么80%的码农都做不了架构师&#xff1f;>>> 一、发布与溢出 “发布&#xff08;Publish&#xff09;”一个对象的意思是指&#xff0c;使对象能够在当前作用于之外的代码中使用。这个“之外”&#xff0c;尤为关键&#xff0c;各种出问题的地方&#xff0c;都是…...

网站时间轴/如何发布自己的html网站

什么是Nginx Nginx&#xff08;发音同 engine x&#xff09;是一款轻量级的Web 服务器&#xff0f;反向代理服务器及电子邮件&#xff08;IMAP/POP3&#xff09;代理服务器&#xff0c;并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发&#xff0c;最初供俄…...

wordpress建站模板/宁波专业seo服务

在.NET环境中&#xff0c;非托管系统资源由开发人员来负责释放&#xff0c;且非托管系统资源必须显式的使用IDisposable接口的Dispose()来释放(详见&#xff1a;了解.NET内存管理机制)。所有封装或使用了非托管资源的类型都实现了IDisposable接口。同时这些类也在终结器中调用D…...