<p>我使用列表减少了变量的数量。我还向字符串添加了f标志,以避免滥用连接。一般来说,我稍微改进了您的代码(视觉上):)</p>
<pre><code>import random
import sys
import time
print ('Welcome to my quiz. Enter the correct answer for the given math equation.')
print ('Enter -1 to quit \n')
Score = 0
ans = None
num = [random.randint(1,12) for i in range(6)]
num[4] = random.randint(50,100)
CorrectAnswers = [
num[0] * num[1],
num[2] + num[3],
num[4] - num[5]]
while True:
print (f'What is {num[0]} x {num[1]}?')
ans = int(input('Answer: '))
if ans == CorrectAnswers[0]:
print ('Correct!')
Score += 1
elif ans == -1:
break
else:
print (f'Incorrect \n The correct answer is: {CorrectAnswers[0]}')
Score -= 1
print (f'What is {num[2]} + {num[3]}?' )
ans = int (input('Answer: '))
if ans == CorrectAnswers[1]:
print ('Correct!')
Score += 1
elif ans == -1:
break
else:
print (f'Incorrect \n The correct answer is: {CorrectAnswers[1]}')
Score -= 1
print (f'What is {num[4]} - {num[5]}?' )
ans = int(input('Answer: '))
if ans == CorrectAnswers[2]:
print ('Correct!')
Score += 1
elif ans == -1:
break
else:
print (f'Incorrect \n The correct answer is: {CorrectAnswers[2]}')
Score -= 1
print (f'\n Well done, Your final score is: {Score}')
time.sleep(2)
sys.exit()
</code></pre>
<p>关于任务。在Python中有很多方法可以退出,但我仍然选择sys.exit()。
如果您想让这段代码变得完美,请阅读Python中的OOP,并查看Python语言代码风格PEP8</p>
<p>哦:<a href="https://realpython.com/python3-object-oriented-programming/" rel="nofollow noreferrer">https://realpython.com/python3-object-oriented-programming/</a></p>
<p>代码样式:<a href="https://www.python.org/dev/peps/pep-0008/" rel="nofollow noreferrer">https://www.python.org/dev/peps/pep-0008/</a></p>