Python newb在这里 - 尝试了一些我在谷歌上找到但却没有用的东西,也许我正在说出我想做错误的事情。我有一个IRC机器人在游戏后运行以下内容:
def finish(attacker,defender,winner):
if winner == attacker:
kick(defender,"banned")
else:
kick(attacker,"banned")
我想要做的是获取胜利者的价值并将其导出到.txt文件中,以及一个计数器,显示他们最终成为"赢家"的次数。正如我所说,我尝试了一些我在谷歌上找到的东西,并试图确定一些其他机器人做类似的事情,但它似乎没有工作(因为我尝试的方法似乎更多比我做的简单导出更复杂。
答案 0 :(得分:1)
所以这里有2个选项。你的意思是你想要一个基本上是所有游戏日志的文件,谁赢了?这是更容易的选择。该文件看起来像:
1/1/14 00:00:01 Player 1 won 3 games
1/1/14 00:01:01 Player 2 won 5 games
1/1/14 00:04:05 Player 1 won 5 games
或者......您可能需要一个仅包含总计的文件:
Player 1 has won a total of 8 games.
Player 2 has won a total of 5 games.
要做第一个选项,你需要一些简单的东西:
score_filehandle = open("filename.txt","w+")
# And then when a game ends:
score_filehandle.write(" ".join([current_time, player_id, "won", games_won, "games"]) + "\n")
要做第二个更复杂,最好使用sqlite处理。
答案 1 :(得分:0)
以下是一些示例代码,如果它有帮助:
import random
import csv
count = 0
with open('sample.csv', 'w') as csvfile:
fieldnames = ['count', 'token']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
while count < 100000:
strRand = ''.join(random.sample(map(chr, range(48, 57) + range(65, 90) + range(97, 122)), 24))
writer.writerow({'count': count, 'token': strRand})
count = count + 1