6 1.编写程序实现,录入3个学生的学号,姓名,成绩。将这些数据写入文件"data.txt" 中,每个学生信息占一行。(注: 第1个学生的学号,姓名为自己的真实信息)。 2.读取数据,并按学生成绩升序,输出对应的学生学号和成绩。 截图要求: 1. 代码2.文件内容3.输出数据
时间: 2024-03-20 20:39:27 浏览: 20
请尝试以下代码:
```python
# 写入学生信息到文件
with open("data.txt", "w") as f:
f.write("2021000001 张三 90\n")
f.write("2021000002 李四 80\n")
f.write("2021000003 王五 70\n")
# 读取学生信息并按成绩升序排序
students = []
with open("data.txt", "r") as f:
for line in f:
# 解析每行数据
parts = line.strip().split()
if len(parts) == 3:
student = {"id": parts[0], "name": parts[1], "score": int(parts[2])}
students.append(student)
# 对学生信息按成绩升序排序
students.sort(key=lambda x: x["score"])
# 输出学生学号和成绩
for student in students:
print("{} {}".format(student["id"], student["score"]))
```
代码执行后,文件 "data.txt" 的内容为:
```
2021000001 张三 90
2021000002 李四 80
2021000003 王五 70
```
输出结果为:
```
2021000003 70
2021000002 80
2021000001 90
```
注意:在本代码中,我们假设文件 "data.txt" 已经存在且格式正确。如果文件不存在或格式不正确,程序会抛出异常。