python-学生管理|汉罗塔

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

运行程序,在控制台输入"1"之后的结果如下所示:

==============================

学生管理系统

1.添加学生信息

2.删除学生信息

3.修改学生信息

4.显示所有学生信息

0.退出系统

==============================

请选择功能:1

请输入新学生的姓名:小红

请输入新学生的性别:女

请输入学生的手机号码:123456

结果展示

python 复制代码
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=False
    for i in range(len(data)):
        if(data[i]['name']==name):
            data.pop(i)
            print("删除成功")
            flag=True
    if flag==False:
        print("删除失败,用户不存在")
def change(datas):
    if(len(datas)!=0):
        name = input('请输入修改人姓名:')
        flag=False
        for 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]=new
                flag=True

        if 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:
            break
        inp=input("请输入功能序号:")
        if(inp.isdigit()):
            num=int(inp)
        else:
            print("输入错误,程序退出")
            num=0

2.汉罗塔

python 复制代码
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=3
    move(3,'A','B','C')
相关推荐
君顾13 分钟前
酒吧点餐小程序系统开发实战:从架构设计到上线全流程指南
java·开发语言·酒吧
青 春 记 忆21 分钟前
零基础入门python65:FastAPI 安全调用大模型API
python·fastapi·后端开发
似水এ᭄往昔27 分钟前
【Qt】--常用控件(显示类控件)
开发语言·qt
PHP实战开发录37 分钟前
PHP文件上传成功为什么页面却找不到
开发语言·nginx·php·开发
维克兜率天1 小时前
【维克】特征归一化与标准化:为什么模型对数据的“尺度“很敏感?
人工智能·笔记·python·机器学习·量化
2601_962298671 小时前
Python multiprocessing PicklingError: Can't pickle &l
python·module·multiprocessing·function·picklingerror
CV山月1 小时前
大模型强化学习对齐:从 RLHF 框架到 PPO 算法原理
人工智能·python·大模型·强化学习·多模态·研究生
用户739548002061 小时前
本地 CSV 清洗的小细节:先标准化,再去重,并保留可检查的报告
python
AC赳赳老秦2 小时前
文旅市场公开数据分析:基于 OpenClaw 采集景区客流与门票公示数据,生成区域文旅热度监测报告
java·c语言·python·php·symfony·deepseek·openclaw
青 春 记 忆2 小时前
零基础入门python68:FastAPI 完整博客运行与项目验收
python·fastapi·后端开发