学员管理系统(完整版附带源码)

学员管理系统(完整版附带源码)学员管理系统是刚接触python时算是一个比较难的小项目,毕竟第一次接触这样的思维逻辑,不过用心学起来还是很有趣的,发现乐在其中,也就不觉得难了。下面给大家分享一下学员管理系统较为完整的代码1.主程序importsys,datetimestulist=[]stuNumlist=[]userdata={}whileTrue:userInput=showmenu()ifuserInput==”1″:addStu().

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

学员管理系统是刚接触python时算是一个比较难的小项目,毕竟第一次接触这样的思维逻辑,不过用心学起来还是很有趣的,发现乐在其中,也就不觉得难了。下面给大家分享一下学员管理系统较为完整的代码

学员管理系统(完整版附带源码)

 

1.主程序

import sys ,datetime
stulist = []
stuNumlist = []
userdata = {}
while True:
    userInput = showmenu()
    if userInput == "1":
        addStu()
    elif userInput == "2":
        delStu()
    elif userInput == "3":
        revStu()
    elif userInput == "4":
        queryStu()
    elif userInput == "5":
        sys.exit()
    else:
        print("输入了错误的信息!")
        continue

2.打印菜单

def showmenu():
    print("============================================学员管理系统======================================================")
    print("#  *    *    *     *       *       *       1.添加新学员   *     *     *     *     *     *      *     *     * #")
    print("#     *     *    *     *      *         *  2.删除学员  *     *     *     *     *     *      *      *    *    #")
    print("#   *     *   *      *     *      *        3.修改学员     *     *      *     *     *     *      *      *     #")
    print("#      *      *     *      *       *       4.查询学员   *     *     *     *     *      *      *     *       *#")
    print("#   *      *     *     *      *       *    5.按Q退出系统    *     *     *     *      *      *    *      *    #")
    print("=============================================================================================================")
    userInput = input("请输入你要进行操作的操作编码:")
    return userInput

3.添加学员

def addStu():
    while True:
        user_name = input("请输入学员姓名,输入q退出:").strip().lower()
        if user_name in stulist:
            print("此学生已存在!请重新输入。")
            continue
        if len(user_name) == 0:
            print("学员姓名不能为空!")
        if user_name == "q":
            break
        user_age = input("请输入学员年龄:").strip()
        if int(user_age) < 0 or int(user_age) > 100:
            print("错误的年龄!")
            continue
        user_num = input("请输入学员学号:").strip()
        if user_num in stuNumlist:
            print("重复的学号!")
            continue
        user_sex = input("请输入学员性别[f|m]:").strip().lower()
        if user_sex != "f" and user_sex != "m":
            print("错误的性别!")
            continue
        userdata[user_name] = {"name":user_name,"age":user_age,"num":user_num,"sex":user_sex}
        userdata[user_num] = {"name":user_name,"age":user_age,"num":user_num,"sex":user_sex}
        stulist.append(user_name)
        stuNumlist.append(user_num)
        print("学员添加完成!")
        time.sleep(1.5)
        break

4.删除学员

def delStu():
    while True:
        num = 1
        for neer in stulist:
            print(num,neer)
            num += 1
        userinput = input("请选择要删除的学员编号,返回请按y,退出请按b:").strip().lower()
        if userinput == "y":
            break
        elif userinput == "b":
            sys.exit()
        elif stulist[int(userinput)-1] in stulist:
            del userdata[stulist[int(userinput)-1]]
            del userdata[stuNumlist[int(userinput)-1]]
            del stulist[int(userinput)-1]
            del stuNumlist[int(userinput)-1]
            print("删除成功!")
            time.sleep(1.5)
            break

5.修改学员信息

def revStu():
    while True:
        num = 1
        for neer in stulist:
            print(num, neer)
            num += 1
        userinput = input("请选择要修改的学员编号,返回请按y,退出请按b:").strip().lower()
        if userinput == "y":
            break
        elif userinput == "b":
            sys.exit()
        elif stulist[int(userinput) - 1] in stulist:
            user_name = input("请输入学员姓名:").strip().lower()
            if user_name in stulist:
                print("此学生已存在!请重新输入。")
                continue
            if len(user_name) == 0:
                print("学员姓名不能为空!")
            user_age = input("请输入学员年龄:").strip()
            if int(user_age) < 0 or int(user_age) > 100:
                print("错误的年龄!")
                continue
            user_num = input("请输入学员学号:").strip()
            if user_num in stuNumlist:
                print("重复的学号!")
                continue
            user_sex = input("请输入学员性别[f|m]:").strip().lower()
            if user_sex != "f" and user_sex != "m":
                print("错误的性别!")
                continue
            del userdata[stulist[int(userinput) - 1]]
            del userdata[stuNumlist[int(userinput) - 1]]
            del stulist[int(userinput) - 1]
            del stuNumlist[int(userinput) - 1]
            userdata[user_name] = {"name": user_name, "age": user_age, "num": user_num, "sex": user_sex}
            userdata[user_num] = {"name": user_name, "age": user_age, "num": user_num, "sex": user_sex}
            stulist.append(user_name)
            stuNumlist.append(user_num)
            print("学员信息修改成功!")
            time.sleep(1.5)
            break

6.查询学员信息

def queryStu():
    userinput = input("请输入查询的学员姓名或学号:").strip()
    if userinput in stuNumlist:
        name = userdata[userinput]["name"]
        age = userdata[userinput]["age"]
        num = userdata[userinput]["num"]
        sex = userdata[userinput]["sex"]
        print("学员姓名是:%s ,年龄是:%s ,性别是:%s ,性别为:%s" % (name, age, sex, num))
        time.sleep(2)
    elif userinput in stulist:
        name = userdata[userinput]["name"]
        age = userdata[userinput]["age"]
        num = userdata[userinput]["num"]
        sex = userdata[userinput]["sex"]
        print("学员姓名是:%s ,年龄是:%s ,性别是:%s ,性别为:%s" % (name, age, sex, num))
        time.sleep(2)
    elif userinput not in stuNumlist:
        print("没有该学员")
    elif userinput not in stulist:
        print("没有该学员")

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192612.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • xshell5连接不上虚拟机_虚拟机的网络连接设置

    xshell5连接不上虚拟机_虚拟机的网络连接设置一:首先解决的关于ping的问题1.在虚拟机中ping百度看能不能先ping通,如果虚拟机连接不上网络的话Xshell肯定是连接不上的,如果有上述情况的请点击二:检查你虚拟机中防火墙是否关闭CentOs6中查看防火墙状态:serviceiptablesstatus关闭防火墙:serviceiptablesstop禁用防火墙:chkconfigiptablesoffCentOs7中查看防火墙状态:systemctlstatusfirewalld.service关闭防火墙:

    2022年9月22日
    0
  • SOAP协议

    SOAP协议一、SOAP与HTTP的区别HTTP只负责把数据传送过去,不论这个数据是XML、HTML、图片、文本文件或者其他形式。SOAP协议则定义了怎么把一个对象变成XML文本,在远程如何调用等。二、SO

    2022年6月30日
    22
  • 银行家算法代码实现(C语言)「建议收藏」

    银行家算法代码实现(C语言)「建议收藏」自存#include<stdio.h>#include<stdlib.h>structprocess{inta,b,c;//max值intx,y,z;//allocation值intneed1,need2,need3;//need值intfinish;}p[5];intn=5,i,t;intresource[5]={0};intsum[5]={0};intavai[3]={0};in.

    2022年5月30日
    28
  • 动态规划优缺点_巴西优化航空路线利用率

    动态规划优缺点_巴西优化航空路线利用率C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为 1 条。C 国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。商人阿龙来到 C 国旅游。当他得知“同一种商品在不同城市的价格可能会不同”这一信息之后,便决定在旅游的同时,利用商品在

    2022年8月9日
    1
  • PL/SQL语法学习(一)

    PL/SQL语法学习(一)

    2021年8月24日
    46
  • 12306站点及车次信息「建议收藏」

    12306站点及车次信息「建议收藏」仅供学习交流,勿非法使用一、获取全国所有车站信息直接查询12306:https://kyfw.12306.cn/otn/czxx/init本来想用selenium自动化获取页面元素得到车站信息,结果直接F12在network中找到了车站信息,而且没有加密。再用python处理一下,直接省事不少。利用百度地图API,可以得到详细的地理位置及经纬度,再写入EXCEL表https://api.map.baidu.com/place/v2/search?query=”+<车站名称>

    2022年9月17日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号