csv文件编写并录入学生信息

import csv
class Student:
    role='student' # 类属性
    def __init__(self,id,name,sex,age,scores): # 实例属性
        self.info_list=[id,name,sex,age,scores]
    @classmethod
    def change_role(cls,new_role):# 类方法:更改类属性值
        cls.role=new_role
    def print_student(self):# 实例方法:打印学生信息
        print(self.info_list)
    def update_student(self,id,name,sex,age,scores): # 实例方法:修改学生信息函数
        self.info_list[0]=id
        self.info_list[1] = name
        self.info_list[2] = sex
        self.info_list[3] = age
        self.info_list[4] = scores
def main():
    student_list=[]# 创建学生类信息空列表
    while True:# 输入学生信息
        id=input("输入学号:(输入q退出)")
        if id=='q':
            break
        name = input("输入姓名:")
        sex= input("输入性别:")
        age=input("输入年龄:")
        scores_input= input("输入成绩列表:")
        scores=[score for score in scores_input.split(',')]
        stu=Student(id,name,sex,age,scores) # 创建学生实例
        student_list.append(stu)# 将学生信息放入学生类信息列表
    with open('students.csv','w',newline='',encoding='utf-8')as file:
        writer=csv.writer(file)
        writer.writerow(['学号','姓名','性别','年龄','成绩'])# 写入表头
        for student in student_list: # 写入学生信息
            writer.writerow(stu.info_list)
        stu.print_student()
if __name__=="__main__":
    main()

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值