用Python构建排名表:如何给参赛者分配分数?

2024-10-02 10:21:22 发布

您现在位置:Python中文网/ 问答频道 /正文

(我之前在Stackexchange的错误部分发布了这个,抱歉)

我正在做一项超出我想象的任务。我已经试了好几天想知道怎么做,但我就是做不好。。。 我必须做一个排名表,我可以在其中输入一个用户,改变用户的得分,注册他/她是否支付,并显示所有用户的顺序谁得分最高。在

第一部分我要使用CSV,我只把基本部分放在这里,以节省空间。菜单和导入csv已经完成:(我必须从我的母语翻译很多,如果有错误,我知道这是一个坏习惯)。在

more = True
while more:
    print("-" * 40)
    firstname = raw_input("What is the first name of the user?: ")
    with open("user.txt", "a") as scoreFile:
        scoreWrite = csv.writer(scoreFile)
        scoreWrite.writerow([firstname, "0", "no"])
    scoreFile.close()
    mr_dnr = raw_input("Need to enter more people? If so, enter 'yes' \n")
    more = mr_dnr in "yes \n"

这样我就可以输入名字了。现在我需要第二部分(当然还有菜单中的其他选项)来:

  1. 让用户输入此人的姓名
  2. 然后输入那个人的(新)分数。在

因此它需要将csv文件中任何条目中的第二个值(“0”)更改为用户输入的值,而不会删除csv文件中已经存在的名称。在

这有可能吗?一位好心的用户建议使用SQlite3,但这个CSV基本功能已经超出了我的能力范围。。。在


Tags: csvthe用户inputrawmore错误菜单
1条回答
网友
1楼 · 发布于 2024-10-02 10:21:22

您的朋友是对的,SQlite3将是一个更好的方法。如果这是扩展你的知识太多,我建议建立一个名为users的目录,每个用户有一个文件。每次需要更新时,使用JSON(或pickle)写入用户信息并覆盖整个文件。在

相关问题 更多 >

    热门问题