前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python之文件操作实现学生管理系统

python之文件操作实现学生管理系统

作者头像
jiankang666
发布2022-12-05 13:45:22
5260
发布2022-12-05 13:45:22
举报
文章被收录于专栏:java基础笔记java基础笔记

博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。


一、背景

  Python 是一门易于学习、功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面向对象编程。Python 优雅的语法和动态类型以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的理想语言。下面我们来介绍一下python的文件操作实现学生管理系统相关知识。


二、学生管理系统

  增加保存学生信息到文件的功能和从文件中读取学生信息到程序的功能。 (1)在显示菜单列表的函数中,增加“保存数据”和“恢复数据”选项。 (2)保存函数,用于将学生数据保存到文件中,write()方法的参数必须是字符串类型,因此,需要将字典类型的数据强制转换为字符串后进行写入。 (3)增加函数,用于从文件中读取数据到变量,从文件中读取到的内容是字符串,我们需要将这些带有特定格式的字符串转换为其原来的类型,可调用eval()函数将字符串转换为字典。 (4)在main函数中增加输入选项。

1、添加一个学生信息
代码语言:javascript
复制
def addStuInfo():
    newNum = input("请输入新学生的学号:")    #提示并获取学生的学号
    newName = input("请输入新学生的姓名:")    #提示并获取学生的姓名
    newSex = input("请输入新学生的性别(男/女):")#提示并获取学生的性别
    newInfo = {}                #定义字典
    #赋值
    newInfo['num'] = newNum
    newInfo['name'] = newName
    newInfo['sex'] = newSex
    stuInfos.append(newInfo)            #将元素添加到列表中
2、获取文件操作菜单
代码语言:javascript
复制
stuInfos=[]        
def printMenu():        
    print("="*20)
    print(" 学生管理系统V2.0 ")
    print("1.添加学生信息")
    print("2.删除学生信息")
    print("3.显示所有学生信息")
    print("4.保存数据")
    print("5.恢复数据")
    print("0.退出系统")
    print("="*20)
3、删除一个学生信息
代码语言:javascript
复制
def delStuInfo(student):
    del_num = input("请输入要删除的学生的学号:")
    for stu in student:
        if stu['num'] == del_num:
            student.remove(stu)    
4、显示所有学生信息
代码语言:javascript
复制
def showStuInfo():
    print("=" * 20)
    print("学生的信息如下:")
    print("=" * 20)
    print("序号    学号    姓名   性别")
    i = 1
    #遍历存储学生信息的列表,输出每个学生的详细信息
    for tempInfo in stuInfos:
        print("%d      %s      %s     %s" % (i, tempInfo['num'],tempInfo['name'], tempInfo['sex']))
        i += 1
5、保存到文件
代码语言:javascript
复制
def save_file():
    with open('student.txt','w') as file:
        file.write(str(stuInfos))            
#恢复数据
def recover_data():
    global stuInfos
    with open('student.txt','r') as file:
        content = file.read()
        stuInfos = eval(content)        
6、main函数控制整个程序的流程
代码语言:javascript
复制
def main():
    while True:
        printMenu()                        #打印功能菜单
        key = input("请输入功能对应的数字")#获取用户输入
        if key == '1':                        #添加学生信息
            addStuInfo()
        elif key == '2':                    #删除学生信息
            delStuInfo(stuInfos) 
        elif key == '3':                    #显示学生信息
            showStuInfo()
        elif key == '4':
            save_file()
        elif key == '5':
            recover_data()
        elif key == '0':                    #退出循环
            quit_con = input("确定退出吗?(Yes or No):")
            if quit_con == 'Yes':
                break
main()                            #调用main函数

注意:str()和eval()函数都是Python内置函数,其中str()函数的作用是将对象转换为字符串,eval()函数用于执行一个字符串表达式,并返回表达式的值。


三、参考

1、廖雪峰的官网 2、python官网 3、Python编程案例教程


四、总结

  以上就是就是关于Python的文件操作实现学生管理系统相关知识,可以参考一下,觉得不错的话,欢迎点赞、收藏、在看,欢迎微信搜索关注java基础笔记,后面会不断更新相关知识,大家一起进步。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-10-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java基础笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、背景
  • 二、学生管理系统
    • 1、添加一个学生信息
      • 2、获取文件操作菜单
        • 3、删除一个学生信息
          • 4、显示所有学生信息
            • 5、保存到文件
              • 6、main函数控制整个程序的流程
              • 三、参考
              • 四、总结
              相关产品与服务
              云开发 CloudBase
              云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档