How would I write the scores to a file?
import random
score=0
question=0
for i in range(10):
num1= random.randint(1,10)
num2= random.randint(1,10)
ops = ['+', '-', '*']
operation = random.choice(ops)
Q = int(input(str(num1)+operation+str(num2)))
if operation =='+':
answer=num1+num2
if Q == answer:
print ("correct")
score=score+1
else:
print('You Fail')
elif operation =='-':
answer=num1-num2
if Q == answer:
print ("correct")
score=score+1
else:
print("you fail")
else:
answer=num1*num2
if Q == answer:
print ("correct")
score=score+1
else:
print("you fail")
print("thank you for playing your score is",score)
You can manually open and close a file but it is better to use with
since it handles closing the file for you.
with open("score_file.txt",'a') as f:
f.write(score)
'a'
means append to file which does not overwrite the previous contents - this is what you are probably looking for. From what I can tell you are going to want to add this after the print statement or right before. If you don't understand reading and writing to files, then you should check out this link.
This is how you open and write to a file :
# Open a file
fo = open("foo.txt", "w") # Creates a file object 'fo'
fo.write("Output text goes here")
# Close opened file (good practice)
fo.close()
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With