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')
相关推荐
初夏睡觉21 分钟前
从0开始c++,但是重置版,第1篇(c++基本框架)
开发语言·c++
workflower5 小时前
时序数据获取事件
开发语言·人工智能·python·深度学习·机器学习·结对编程
CoderYanger6 小时前
C.滑动窗口-求子数组个数-越长越合法——2799. 统计完全子数组的数目
java·c语言·开发语言·数据结构·算法·leetcode·职场和发展
C++业余爱好者6 小时前
Java 提供了8种基本数据类型及封装类型介绍
java·开发语言·python
林杜雨都6 小时前
Action和Func
开发语言·c#
皮卡龙6 小时前
Java常用的JSON
java·开发语言·spring boot·json
火山灿火山7 小时前
Qt常用控件(三)
开发语言·qt
利刃大大7 小时前
【JavaSE】十三、枚举类Enum && Lambda表达式 && 列表排序常见写法
java·开发语言·枚举·lambda·排序
float_六七7 小时前
Java反射:万能遥控器拆解编程
java·开发语言
AI Echoes7 小时前
构建一个LangChain RAG应用
数据库·python·langchain·prompt·agent