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')

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

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

相关文章

js的考试试题

一、填空题 JavaScript有两种引用数据类型 :数组_、对象。Javascript通过__setTimeout___延迟指定时间后,去执行某程序。Javascript里String对象通过__indexOf__方法取第一次出现子字符 串的字符位置。Javascript里取字符串的长度是__.length__,取数组的…

聊聊nginx的keepalive相关参数

序 本文主要研究一下nginx的keepalive相关参数 keepalive_timeout Syntax: keepalive_timeout timeout [header_timeout]; Default: keepalive_timeout 75s; Context: http, server, location默认是75s,客户端的一个keep-alive连接在服务端保持open的时间&#…

排序算法:n个0~1000之间的整数,将他们从大到小排序

上榜理由: 如果没见过这种排序题,可能首先想到的就是常用的排序算法,比如快速排序,归并排序,那如果输入的n足够大,时间复杂度肯定比较高。其实题目0-1000的范围是一个题眼,所以一定有更优的排序…

微信小程序加载动态svg数据图片

微信小程序加载动态svg数据图片 解决方案和步骤1. 获取svg数据2. 对数据进行转码3. 在wxml中使用 微信小程序如何加载动态的svg数据图片? 尝试过多种方式都不可行: 在使用在src以base64方式使用 解决方案和步骤 通过远程服务获取svg图片数据&#xff…

商务助理个人简历10篇

商务助理简历模板下载(可在线编辑制作):来幻主简历,做好简历! 商务助理简历1: 求职意向 求职类型:全职 意向岗位:国际商务、产品助理 意向城市:广东广州 …

ElasticSearch篇---第一篇

系列文章目录 文章目录 系列文章目录前言一、谈谈分词与倒排索引的原理二、说说分段存储的思想三、谈谈你对段合并的策略思想的认识前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分…

【每日一题】确定两个字符串是否接近

文章目录 Tag题目来源题目解读解题思路与实现方法一:计数 其他语言python3 写在最后 Tag 【计数】【字符串】 题目来源 1657. 确定两个字符串是否接近 题目解读 你可以进行以下两种操作: 操作 1:交换任意两个位置的字符;操作 …

浪涌保护器参数指南:浪涌保护器行业选型方案

浪涌保护器(SPD)是一种用于限制瞬态过电压和泄放浪涌电流的器件,可有效降低电子设备在雷击、电源故障等情况下受到的损害。其主要作用是当系统发生浪涌时,将过电压、过电流泄放到大地,从而保护设备和人身安全。然而浪涌…

什么是Amazon Lambda(无服务器计算服务)

Lambda 在高可用性计算基础设施上运行代码,用于执行计算资源的所有管理工作。这包括服务器和操作系统维护、容量调配和弹性伸缩、代码和安全补丁部署以及代码监控和日志记录。您只需要提供代码。 最近亚马逊云服务提供了超多免费的云服务,快来领取免费套…

【设计模式】单例模式代码设计

目录 单例模式简介饿汉单例模式懒汉单例模式线程安全的懒汉单例模式 橙色 详细可参考该篇文章:C设计模式 - 单例模式 单例模式简介 单例模式指的是,无论怎么获取,永远只能得到该类类型的唯一一个实例对象,那么设计一个单例就必须…

聊聊部署在不同K8S集群上的服务如何利用nginx-ingress进行灰度发布

前言 之前有篇文章聊聊如何利用springcloud gateway实现简易版灰度路由,里面的主人公又有一个需求,他们有个服务是没经过网关的,而是直接通过nginx-ingress暴露出去,现在这个服务也想做灰度,他知道在同个集群如何利用nginx-ingre…

Git 分支合并时 Merge, Rebase, Squash 的使用场景

前言 Git 的分支设计大大提升了并行开发的能力,但相应的,也就要解决如何进行分支合并。毕竟分久必合,最终还是要把大家的工作合并起来,进行统一发布的。在合并时,通常有三种操作: Merge commitsRebaseSqu…

Vue学习计划--Vue2(二)Vue代理方式

Vue data中的两种方式 对象式 data:{}函数式 data(){return {} }示例&#xff1a; <body><div id"app">{{ name }} {{ age}} {{$options}}<input type"text" v-model"value"></div><script>let vm new Vue({el: …

Linux操作系统之wget下载软件并安装

文章目录 前言一、apt下载二、wget下载1、新建目录存放文件2、根据下载地址使用wget下载安装包3、解压包4、命令指定目录&#xff0c;让其生效如有启发&#xff0c;可点赞收藏哟~ 前言 一般安装可以直接使用apt命令&#xff0c;不过安转的不是最新版本的&#xff0c;且没法指定…

Redis交互速度慢,频繁处理时经常报错 RedisSystemException: RedisException: Connection closed

Redis交互速度很慢&#xff0c;达到几十到一百毫秒一次&#xff0c;且压力测试下经常报错&#xff1a; org.springframework.data.redis.RedisSystemException: Redis exception; nested exception is io.lettuce.core.RedisException: Connection closedat org.springframewo…

西南科技大学C++程序设计实验四(类与对象三)

一、实验目的 1. 理解类的组合定义、说明与使用 2. 参数化列表的使用 3. 组合类的特例——string类 二、实验任务 重点:掌握组合类的定义与实现,丰富类的数据成员与成员函数,拓展其功能。 阅读分析、完善程序。下面是一个组合类 Teacher的定义,数据成员包括代表姓名的…

驱动开发--内核添加新功能

Ubuntu下这个文件为开发板ls命令的结果 内核的内容&#xff1a; mm&#xff1a;内存管理 fs&#xff1a;文件系统 net&#xff1a;网络协议栈 drivers&#xff1a;驱动设备 arch与init&#xff1a;跟启动相关 kernel与ipc&#xff1a;任务&#xff0c;进程相关 向内核增…

python-批量调整指定目录下所有图片文件的大小

前言&#xff1a; 在很多情况下我们都需要调整图片的大小到所需要的尺寸&#xff0c;比如在深度学习中批量调整图片大小可以使得数据预处理更加高效&#xff0c;如果图片过大&#xff0c;训练的时候会比较慢&#xff0c;而且占用内存空间&#xff0c;图片尺寸不一样的情况下&am…

关于mysql字段类型为text还提示类型太短问题

MySQL中的Text字段最大长度 Text字段是MySQL中一种用来存储大量文本数据的数据类型。它能够存储比较大的数据&#xff0c;所以在保存文章详情内容或商品详情内容都会用到&#xff0c;到底有多长呢&#xff1f; Text字段的限制 虽然Text字段能够存储大量的文本数据&#xff0…

Depop自养号下单教程,测评环境、IP与买家资料的关键

Depop是一家总部位于英国伦敦的在线时尚市场和社交媒体平台。该平台于2011年由Simon Beckerman创立&#xff0c;旨在提供一个结合了时尚、创意和社交互动元素的独特购物体验。Depop已经发展成为一个备受欢迎的时尚社交应用&#xff0c;吸引了全球范围内的卖家和购物者。提供了一…