这是我的代码:
import csv
# Note: p1 and p2 are integers
if p1 > p2:
print ("congratulations player 1, your total bigger so you win")
print ("PLAYER 1 WINS!")
f = open("p1scores.txt","w")
f.write (p1 ",")
f.close()
f = open("p1scores.txt","r")
scorelist = csv.reader(f,delimiter=',')
for everyrow in scorelist:
everyrow.sort(reverse=True)
top5 = everyrow[:5]
print(top5)
第f.write (p1 ",")
行给了我一个语法错误。
我不知道如何解决它,因为我需要在p1之后写一个逗号,所以我不能只做f.write(p1)
。
但是f.write(p1)
也不起作用,它只是给我错误write() argument must be str, not int
。
我如何用逗号将变量p1写入p1scores.txt?
答案 0 :(得分:0)
您需要正确连接它们,由于p1 ","
无效,因此会出现语法错误。您还可能尝试在Python需要字符串的地方写一个整数。以下代码将p1
转换为字符串值,然后在逗号后附加+ ","
f.write(str(p1) + ",")
还有其他解决方法,可能更优化/更快,但是如果您刚接触python,通常会更加混乱/复杂。
示例:
f.write('{},'.format(p1))