如何使用python中的OOP从文本文件创建排行榜?

问题描述 投票:0回答:1

我是python的新手,正在制作一款游戏,需要从文本文件中读取信息,并将其放入排行榜,该排行榜按得分的高低排列,每个分数旁边都有人的名字。 .txt文件如下所示:

bob,100

cat,300

dog,80

mouse,50

它也必须是面向对象的,因此任何帮助将不胜感激。 :)

python sorting oop pygame leaderboard
1个回答
0
投票

您可以逐行读取文本文件,并将值放入元组列表中。忽略空行。使用string.split()将行分为两个值。

每个条目都是一个元组(,)。确保将分数从字符串转换为整数。然后,您可以按分数对列表进行排序。

def load_data(file_name):
    result = []
    with open(file_name, 'r') as f:
        for line in f:
            values = line.strip().split(',')
            if len(values) == 2:
                name, score = values
                result.append((name, int(score)))
    return sorted(result, reverse=True, key=lambda x: x[1])

要使其成为OOP,只需使您的排行榜成为一个类,即可加载,更新数据,创建要显示的位图,等等。

© www.soinside.com 2019 - 2024. All rights reserved.