python - 最高分 Python
问题描述
我很难弄清楚如何使这段代码工作。我需要输入一个包含名称和分数列表的文本文件,然后我需要从分数中拆分名称,然后使用 if 语句检查分数是否大于最低分数。
文本文件如下所示:
Jan 86
Drew 92
Blake 85
Alex 81
Taylor 88
Jordan 72
Cam 89
到目前为止,我有以下代码:
SCORE_POSITION_IN_ENTRY = 0
NAME_POSITION_IN_ENTRY = ""
def main (student_name, student_score):
print (f"Highest score: {student_score}")
print (f"Achieved by: {student_name}")
def read_file (scores):
list_of_grades = ""
data_list = []
infile = open('scores.txt','r')
list_of_grades = infile.readline()
while (list_of_grades != ""):
data_list = int(list_of_grades)
list_of_grades = infile.readline()
infile.close()
return data_list
def find_max_score(data_list):
entry_in_list = []
maximum_score = 0
#splitting the list
entry_in_list = data_list.split('')
current_score=int(entry_in_list[SCORE_POSITION_IN_ENTRY])
if current_score > maximum_score:
maximum_score = current_score
student_name = entry_in_list[NAME_POSITION_IN_ENTRY];
student_score = entry_in_list[SCORE_POSITION_IN_ENTRY];
return student_name, student_score
main()
解决方案
您的文本文件在名称和分数之间有两个空格。此代码将起作用:
def main(filename):
student_name, student_score = find_max_score(read_file(filename))
print(f"Highest score: {student_score}")
print(f"Achieved by: {student_name}")
def read_file(filename):
data_list = []
with open(filename, 'r') as reader:
for line in reader.readlines():
data_list.append(line)
return (data_list)
def find_max_score(data_list):
max_score = 0
best_student = None
for entry in data_list:
name, score = entry.split(' ')
if int(score) > max_score:
max_score = int(score)
best_student = name
return (best_student, max_score)
main('scores.txt')
#output:
Highest score: 92
Achieved by: Drew
推荐阅读
- python - 将变量传递给项目的另一个脚本时出错
- python - 根据另一个带有熊猫的df中的信息,在另一个df中添加一个新列
- plsql - 如何使用PLSQL方法将select语句数据导出到excel
- json - 基于两个 JSONSchema 为实例数据生成 JSONPatch
- amazon-web-services - 如何将 AWS SQS 与 AWS EKS 结合使用
- javascript - 更改传单中的坐标 - 地图容器已初始化
- javascript - 如何使用 React hooks 和 Redux 从 useEffect 执行 store.unsubscribe
- splunk - 如果今天的日志量比过去三天每项服务的平均值高 10%,则 Splunk 发出警报
- javascript - 如何使用 PHP 在 dropzone.js 中上传文件
- security - 如何使用客户端加密和 Web API 做 SaaS?