河时时 发表于 2021-3-26 12:03:26

写好函数后怎么读取文件中的数据,将这些数据存入一个字典啊,请大佬帮忙看看!谢谢!

课堂小设计:   从文件中读数据,存入字典
Grades.txt 文件。如下:
0052 77.5
0072 37.5
0144 62.5
0162 72.5
0173 100
0190 55.0
0196 95.0
0225 82.5
0268 97.5
0306 57.5

def read_grades(gradefile):
grade_to_ids = {}
line = gradefile.readline()
while line != ‘’:
student_id = line[:4]
grade = float( line.strip())
if grade not in grade_to_ids:
grade_to_ids =
else:
grade_to_ids.append(student_id)
line = gradefile.readline()
return grade_to_ids
这是已经写好的例子,是一个函数,读取文件,将数据存入一个字典,字典的 key 是分数,对应的 value 是一个列表,代表得这个分数的学生学号
练习 1:调用这个函数,查看运行结果
练习 2:程序设计
Step1: 从文件中读取数据存入一个字典
Step2: 统计各分数段的人数(0-9; ...; 60-69;70-79;80-89;90-99;100)
Step3: 将统计结果输出(进阶:以直方图形式存入另一文件)
提示:
分别设计 3 个函数来完成相应功能:
一个读取函数;一个统计函数;一个写文件函数
读文件函数, 将文件里的分数读入一个列表
def read_grades(gradefile):
...
return grades

统计函数,统计各分数段人数
def count_grade_ranges(grades):
...
return range_counts
写入文件函数,将各分数段人数变成相应个数的“ * ”,写进一个文件的相应行
def write_histogram(range_counts, histfile):
...


求求了,救救孩子吧!!
欢迎大神(只要比我厉害都叫大神哈哈哈)指导~

qq1151985918 发表于 2021-3-26 12:35:11

Dict = {}
f = open("Grades.txt","r",encoding = "utf-8")
data = f.readlines()
for i in data:
    key,value = i.split()
    Dict = value
print(Dict)
页: [1]
查看完整版本: 写好函数后怎么读取文件中的数据,将这些数据存入一个字典啊,请大佬帮忙看看!谢谢!