Python 学生信息管理:读取、修改、写入文件
Python 学生信息管理:读取、修改、写入文件
本程序使用 Python 语言实现学生信息管理系统,包括以下功能:
- 读取
student.txt文件,该文件存储学生信息,每行包含学号、姓名、性别、身高,以 Tab 键分隔。 - 使用
Student类存储学生信息,并提供show方法显示学生信息,modify方法修改学生信息。 - 将修改后的学生信息重新写入
student.txt文件。
学生类代码:
class Student:
def __init__(self, id, name, gender, height):
self.id = id
self.name = name
self.gender = gender
self.height = height
def show(self):
print('学号:%s 姓名:%s 性别:%s 身高:%.2f' % (self.id, self.name, '男' if self.gender == '0' else '女', self.height))
def modify(self, key, value):
if key == 'id':
self.id = value
elif key == 'name':
self.name = value
elif key == 'gender':
self.gender = value
elif key == 'height':
self.height = value
读取文件并调用函数进行数据维护:
students = [] # 存储学生对象
with open('student.txt', 'r') as f:
lines = f.readlines()
for line in lines:
line = line.strip().split(' ') # 分割每行数据
id, name, gender, height = line
student = Student(id, name, gender, float(height))
students.append(student)
for student in students:
student.show()
student.modify('height', student.height + 0.05) # 将身高加0.05米
student.show()
重新存回文件:
with open('student.txt', 'w') as f:
for student in students:
line = ' '.join([student.id, student.name, student.gender, str(student.height)])
f.write(line + '
')
示例 student.txt 文件内容:
1 杨勇 0 1.78
2 左千 1 1.64
运行程序后,student.txt 文件内容将变为:
1 杨勇 0 1.83
2 左千 1 1.69
注意:
- 此程序将所有学生的身高增加 0.05 米,您可以根据需要修改代码实现其他数据维护功能。
student.txt文件应位于程序所在的目录中。- 此程序仅供学习参考,实际应用中可能需要根据具体需求进行调整。
原文地址: https://www.cveoy.top/t/topic/n31s 著作权归作者所有。请勿转载和采集!