酷代码 AI
菜单
服务商

Python:两种方法读取比赛得分数据,筛选85分以上同学

看起来你在尝试从CSV文件中读取数据,并筛选出得分在85分以上的学生信息。下面是一个修正后的版本,包含了两个方法:直接读取文本文件和使用`csv`模块。 方法一:直接读取文本文件 ```python # 读取文本文件 with open(r'd:\sy8\scores.csv', 'r') as file: lines = file.readlines() # 处理每一行数据 students = [] for line in lines[1:]: # 跳过行 name, score = line.strip().split(',') score = int(score) students.append((name, score)) # 输出所有学生信息 print("源文件数据:") for student in students: print(f"姓名: {student[0]}, 分数: {student[1]}") # 筛选得分在85分以上的学生 high_scores = [student for student in students if student[1] > 85] # 输出得分在85分以上的学生 print("\n85分以上的学生有:") for student in high_scores: print(f"姓名: {student[0]}, 分数: {student[1]}") ``` 方法二:使用`csv`模块 ```python import csv # 使用csv模块读取文件 with open(r'd:\sy8\scores.csv', 'r') as file: reader = csv.reader(file) next(reader) # 跳过行 students = [(row[0], int(row[1])) for row in reader] # 输出所有学生信息 print("源文件数据:") for student in students: print(f"姓名: {student[0]}, 分数: {student[1]}") # 筛选得分在85分以上的学生 high_scores = [student for student in students if student[1] > 85] # 输出得分在85分以上的学生 print("\n85分以上的学生有:") for student in high_scores: print(f"姓名: {student[0]}, 分数: {student[1]}") ``` 需要注意的逻辑点: 1. 处理文件路径:确保文件路径正确无误,特别是Windows系统中路径分隔符是反斜杠`\`。 2. 异常处理:在读取文件时添加异常处理,防止文件不存在或读取错误导致程序崩溃。 3. 数据类型转换:将分数从字符串转换为整数时,确保数据格式正确,避免出现类型转换错误。 希望这些代码和注意事项对你有帮助!如果有任何问题,随时问我。 ######[AI写代码神器 | 563点数解答 | 2024-12-12 18:07:35]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]