清楚自己的需求
昨天我们已经完成了从文件中读取游戏成绩数据的功能,今天要添加进去的功能是——把我们每次游戏的数据更新、保存进去数据库中。
首先,回顾一下之前的变量。
- 发起游戏的次数
- 最快回合数/最好记录
- 在游戏中累计的总回合数
处理数据
我们需要有一个变量,用来记录每次游戏所用的轮数
rounds = 0
游戏过程中,每进行一轮,都会对这个变量进行一次加一计算
rounds += 1
另外我们要还要记录把发起游戏的次数做一次+1,判断最快回合数是否要更新,然后累计总回合数。注意,如果是第一次玩,或者本次的轮数比最小轮数还少,就记录本次成绩为最小轮数:
# Deal
# 01最快记录
if Min_rounds == 0 or rounds < Min_rounds:
Min_rounds = rounds
# 02发起次数
Play_times += 1
# 03总回合数
Total_rounds += rounds
储存存档
有了我们需要的数据,把它们拼成我们需要存储的格式,然后把他们写入到文件中:
# Save
result = '%d %d %d' % (Play_times, Total_rounds, Min_rounds)
f = open('..\GameSave\game-01.txt', 'w')
f.write(result)
f.close()
按照类似的方法,你也可以记录一些其他的数据,这种通过文件来记录数据的方法,以后会在很多程序中派上用场。