基于Python的简易宿舍管理系统(课程作业附课程小论文)

简介: 基于Python的简易宿舍管理系统(课程作业附课程小论文)

本次为三个月学校学习的课程作业,仅用到Python入门知识,简旦易懂。


涉及到的主要有:列表,字典,函数定义调用,循环结构等入门知识


可满足大部分学校此课的基本要求,但添加的功能较少,可在此基础上进行二创,欢迎借鉴!


话不多说,上代码!


message = []
room_number = []
room_name = []
# 欢迎界面
def welcome():
    print('欢迎使用XXXX大学学生宿舍管理系统')
# 目录
def catalogue():
    print('1.添加学生住宿信息')
    print('2.修改学生住宿信息')
    print('3.删除学生信息')
    print('4.浏览学生信息')
    print('5.查找住宿情况')
    print('6.退出系统')
# 1.添加信息功能
def add(name, classes, phone, building, room, berth):
    student = {'name': name, 'classes': classes, 'phone': phone, 'building': building, 'room': room, 'berth': berth}
    message.append(student)
    print('添加信息成功')
# 2.修改信息功能
def alter(name, new_classes, new_phone, new_building, new_room, new_berth):
    for student in message:
        if student['name'] == name:
            student['classes'] = new_classes
            student['phone'] = new_phone
            student['building'] = new_building
            student['room'] = new_room
            student['berth'] = new_berth
            print('修改信息成功')
            break
# 3.删除信息功能
def delete(name):
    for student in message:
        if student['name'] == name:
            message.remove(student)
            break
# 4.浏览学生信息
def details():
    print('name\t\tclasses\t\tphone\t\tbuilding\t\troom\t\tberth')
    for student in message:
        print("%-10s\t\t%-10s\t\t%-10s\t\t%-10s\t\t%-10s\t\t%-10s" % \
              (student['name'], student['classes'], student['phone'], \
               student['building'], student['room'], student['berth']))
# 5.查找住宿情况
def seek():
    print('*' * 15)
    print('a.按学生姓名查询')
    print('b.按宿舍号查找')
    print('c.返回')
# a.按学生姓名查询学生住宿情况
def names(na):
    for student in message:
        if student['name'] == na:
            print('name\t\tclasses\t\tphone\t\tbuilding\t\troom\t\tberth')
            print("%-10s\t\t%-10s\t\t%-10s\t\t%-10s\t\t%-10s\t\t%-10s" % \
                  (student['name'], student['classes'], student['phone'], \
                   student['building'], student['room'], student['berth']))
            break
        else:
            print('查无此人')
# b.按宿舍号查找宿舍入住情况
def buildings(roo):
    for student in message:
        if student['room'] == roo:
            print(room_name)
            break
        else:
            print("无")
def ehk():
    while True:
        welcome()
        catalogue()
        command = input('请输入你的选择:')
        if command == '6':
            print('欢迎下次光临')
            break
        elif command == '1':
            print('添加新同学')
            name = input('请输入姓名:')
            classes = input('请输入班级:')
            phone = input('请输入电话号码:')
            building = input('请输入楼号:')
            room = input('请输入宿舍号:')
            berth = input('请输入床位:')
            room_number.append(room)
            if room not in room_number:
                pass
            else:
                room_name.append(name)
            add(name, classes, phone, building, room, berth)
        elif command == '2':
            print('修改学生信息')
            name = input('请输入要修改的学生的姓名:')
            classes = input('请输入新的的班级:')
            phone = input('请输入新的电话号码:')
            building = input('请输入新的楼号:')
            room = input('请输入新的房间号:')
            berth = input('请输入新的床位:')
            alter(name, classes, phone, building, room, berth)
        elif command == '3':
            print('删除学生信息')
            name = input('请输入要删除的学生的姓名:')
            delete(name)
        elif command == '4':
            print('浏览学生信息')
            details()
        elif command == '5':
            print('查找住宿情况')
            seek()
            com = input('请输入选项:')
            if com == 'a':
                print('按学生姓名查询')
                na = input('请输入学生姓名:')
                names(na)
            elif com == 'b':
                print('按宿舍号查找')
                roo = input('请输入宿舍号:')
                buildings(roo)
            elif com == 'c':
                continue
            else:
                pass
        else:
            pass
# 定义列表,用来记录用户名和密码:
users = ['张三', '李四']
passwd = ['zhangsan', 'lisi']
while True:
    count = 0
    if count < 3:
        user = input("用户名:")
        mima = input("密码:")
        count += 1
        if user in users:
            index = users.index(user)
            pass_wd = passwd[index]
            if mima == pass_wd:
                print("%s登录成功" % user)
                ehk()
                break
            else:
                print("%s登录失败" % user)
        else:
            print("%s用户不存在" % user)
    else:
        print("已经超过三次机会")
        break


此系统仍有很多不足,如制表未对齐,功能少,不可存储多次班级宿舍信息进行归类等,有精力将进行修改完善。对此系统有任何疑问也可私聊询问。

相关文章
|
11天前
|
机器学习/深度学习 传感器 存储
使用 Python 实现智能地震预警系统
使用 Python 实现智能地震预警系统
102 61
|
3天前
|
机器学习/深度学习 数据采集 算法框架/工具
使用Python实现智能生态系统监测与保护的深度学习模型
使用Python实现智能生态系统监测与保护的深度学习模型
19 4
|
15天前
|
机器学习/深度学习 API 计算机视觉
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
18 2
|
15天前
|
机器学习/深度学习 存储 算法
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
19 1
|
18天前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
59 1
|
15天前
|
Python
Python实现系统基础信息
Python实现系统基础信息
27 0
|
15天前
|
机器学习/深度学习 缓存 数据可视化
基于Python_opencv的车牌识别系统
基于Python_opencv的车牌识别系统
20 0
|
20天前
|
机器学习/深度学习 Python
基于python-django的肺结核图片识别系统
基于python-django的肺结核图片识别系统
15 0
|
20天前
|
SQL 前端开发 Python
基于python-django的neo4j人民的名义关系图谱查询系统
基于python-django的neo4j人民的名义关系图谱查询系统
26 0
|
20天前
|
数据采集 前端开发 数据库
基于python-django的neo4j化学关系材料图谱系统
基于python-django的neo4j化学关系材料图谱系统
28 0