# 添加、删除、显示学生信息(保存)

# 保存所有学生信息

students = {}

# 创建

ID = 1000

# 控制系统是否退出

flag = True

# 从文件中读取学生信息

def load_students():

# 加载学生信息从文件中

stu_file = open("students.txt","r")

# 读取文件内容

stus = stu_file.readlines()

global students

# 解析文件数据

max_id = 0

for stu in stus:

#去掉字符串最尾部的换行符\n

stu_list =stu[0:-1].split(",")

#学生信息转成字典类型

s_info = {}

s_info["name"] = stu_list[1]

s_info["score"] = stu_list[2]

#将学生数据写会students字典中

id = int(stu_list[0])

students[id] = s_info

if id > max_id:

max_id = id

ID = max_id

def save_students():

# 保存学生信息到文件

# 1.将每一个学生的信息,拼接成一个字符串

stu_info = []

stu_file = open("students.txt","w")

for k, v in students.items():

stu_info.append(str(k))

stu_info.append(v["name"])

stu_info.append(v["score"])

stu_data = ",".join(stu_info)

stu_data = stu_data + "\n"

stu_file.write(stu_data)

stu_info.clear()

# 关闭文件

stu_file.close()

def add_student():

# 添加新学生

global students

global ID

stu_name = input("请输入新学生的姓名:")

stu_score = input("请输入新学生的分数:")

# 构建学生的字典

stu_info = {}

stu_info["name"] = stu_name

stu_info["score"] = stu_score

#递增ID

ID += 1

# 将新学生添加学生字典中

students[ID] = stu_info

def show_students():

# 显示所有学生信息

for k, v in students.items():

print("学号:%d\t姓名:%s\t分数:%s"%(k, v["name"], v["score"]))

print("----------------")

defremove_student():

# 删除学生信息根据学生编号

delete_id =int(input("请输入要删除学生的学号:"))

# 判断要删除学生的编号是否存在

global students

if delete_id in students.keys():

del students[delete_id]

print("删除编号为%d的学生成功!" % delete_id)

else:

print("您输入的编号有误!")

defshow_operation():

print("请选择操作:")

print("1.添加学生")

print("2.删除学生")

print("3.显示学生")

print("4.退出系统")

print("------------")

# 加载数据

load_students()

while flag:

print("欢迎使用学生管理系统v1.0")

# 显示菜单

show_operation()

operation = input("请输入您的操作:")

if operation == "1":

add_student()

elif operation == "2":

remove_student()

elif operation == "3":

show_students()

elif operation == "4":

print("欢迎再次使用本系统!")

flag = False

save_students()

else:

print("操作有误,请重新输入!")

学生管理系统代码赏析相关推荐

  1. 学生管理系统---代码实现

    学生管理系统---代码实现 database类 students类 users类 dao类 studentdao userdao service类 database类 下面展示一些 内联代码片. pu ...

  2. Python学生管理系统代码

    Python学生管理系统代码一览 复制即用 初学见谅 #python study # -*- coding: utf-8 -*-#学员信息 data = [{'id': ' 1','name': '辛 ...

  3. python删除字典中性别为男_python初学者,用python3实现基本的学生管理系统代码实例...

    本篇文章主要分享python学生管理系统的使用,文章非常详细地介绍了通过示例代码实现的学生管理系统,该系统对每个人的研究或工作都有一定的参考学习价值,希望你能在其中有所收获. 这个是用python实现 ...

  4. python pop check mail_python初学者,用python3实现基本的学生管理系统代码实例

    本篇文章主要分享python学生管理系统的使用,文章非常详细地介绍了通过示例代码实现的学生管理系统,该系统对每个人的研究或工作都有一定的参考学习价值,希望你能在其中有所收获. 这个是用python实现 ...

  5. python做一个系统代码_python初学者,用python3实现基本的学生管理系统代码实例...

    这篇文章分享了管理系统,python学生管理系统的使用,这篇文章非常详细地介绍了通过示例代码实现的学生管理系统,该系统对每个人的研究或工作都有一定的参考学习价值. 这个是用python实现的基本的增删 ...

  6. 管理系统制作的python代码_python学生管理系统代码实现

    本文实例为大家分享了python学生管理系统的具体代码,供大家参考,具体内容如下 类 class Student: stuID = "" name = "" s ...

  7. java学生管理系统代码_java学生信息管理系统(附源码)

    一:   介绍 1:实现登录界面 2:实现主界面 有两种操作 一种是按钮操作  另外一种是SQL语句. 3:连接SQL server 2008 数据库 用到的软件及环境SQLserver2008,ec ...

  8. 黑马学生管理系统代码初了解

    初步代码实现学生的添加删除查找修改功能 package ui;public class s {private String sid;private String name;private String ...

  9. Java+sql server学生管理系统代码展示

    我会先细致的说一下我的界面设计和功能实现以及遇到的问题,然后代码会放到每块的后面展示. 所有界面除了主界面(因为主界面较简单就用了BorderLayout),其余都用的自由布局: setLayout( ...

最新文章

  1. dict是python语言的内置对象_Python内置了字典:dict的支持
  2. 采用EntityFramework.Extended 对EF进行扩展(Entity Framework 延伸系列2)
  3. 加个ing是什么意思_take的意思竟然是“要求”?奇奇怪怪的熟词僻义打卡终于来了!...
  4. [html] html中p标签内为何不能嵌套div标签?
  5. Oracle数据库空间突然增大,Oracle 表空间异常增长过快解决方法
  6. Linux6.8 ssh开启,CentOS 6.8升级 ssh到最新版SSH-8.2p1
  7. 【转载更新】Linux工具之SED 2.应用实例
  8. 基于mysql的springmvcjar_糊涂jar_SpringMVC+Spring+Mybatis项目实战[SSM/MySQL/AJAX/IDEA]_Java视频-51CTO学院...
  9. @selector 如何调用在另一个类中的静态函数?
  10. html + js 上传 图片
  11. lingo3d_基于官方教程的分析
  12. 牛头刨床机构动力学的分析(C语言建模)
  13. windows保护无法启动修复服务器,解决使用sfc命令提示“windows 资源保护无法启动修复服务”的方法...
  14. cocoscreator1.52 删除anysdk
  15. 华为6个月试用期经历
  16. 写给父亲的语音计算器(加减乘除的处理C#,三)
  17. Camunda开源协议可否商用
  18. Unity Bolt插件 基本使用
  19. 东芝硬盘无法打开加密程序
  20. 100道积分公式证明(71-100)

热门文章

  1. 当年年仅18岁韩寒舌战群儒,受尽冷嘲热讽!
  2. 第一站---大连---看海之旅
  3. (十九)java多线程之ForkJoinPool
  4. 现在中国是以24枚金牌位列奖牌榜3位,美国英国分列1、2位
  5. Bootloader启动过程
  6. C# 6.0语法新特性体验(二)
  7. 数据冗余的理解和相关概念
  8. Android学习笔记(八)XML文档的解析
  9. 存储对手机性能的影响
  10. Linux内核奔溃分析