回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在尝试创建一个像吃角子老虎机一样工作的程序。在我的循环中,我试图根据一个玩家的旋转结果来决定他们获得多少学分。然而,假设一个玩家掷骰并赢得300个信用,当被要求再次旋转时,如果他们又赢了一次,它就不记得前一次旋转的结果。在</p>
<p>我知道这是一个简单的修复,但基本上每次循环返回时,它都会忘记更新后的总数。我对编程还不熟悉,这些东西对我来说简直就是地狱。在</p>
<p>下面是循环部分的内容:</p>
<pre><code>cashPool = 500
import random
# Assigning wheel properties
wheel1 = ['Candy','Ghost','Pumpkin','Cat','Zombie','Witch','Witch','Cat','Ghost','Candy']
wheel2 = ['Candy','Ghost','Pumpkin','Cat','Zombie','Witch','Cat','Pumpkin','Ghost','Candy']
wheel3 = ['Candy','Ghost','Pumpkin','Cat','Zombie','Witch','Pumpkin','Candy','Candy','Ghost']
#loop to spin
def AskYesNo(question):
tmp = input(question).lower()
if tmp.startswith('y'):
return True
else:
return False
i = 0
while True:
spin1 = random.randint(3,4)
spin2 = random.randint(3,4)
spin3 = random.randint(3,4)
print(str(wheel1[spin1])+ '\t' + str(wheel2[spin2]+ '\t' + str(wheel3[spin3])))
i += 1
if spin1==4 and spin2==4 and spin3==4:
print('Congratulations! You have won 300 credits')
result = cashPool + 300
print('You currently have '+ str(result) +' credits')
if spin1==5 and spin2==5 and spin3==5:
print('Congratulations! You have won 250 credits')
result = cashPool + 250
print('You currently have '+ str(result)+ ' credits')
if spin1==3 and spin2==3 and spin3==3:
print('Congratulations! You have won 200 credits')
result = cashPool + 200
print('You currently have '+cashPool+' credits')
if spin1==2 and spin2==2 and spin3==2:
print('Congratulations! You have won 150 credits')
result = cashPool + 150
print('You currently have '+cashPool+' credits')
if spin1==1 and spin2==1 and spin3==1:
print('Congratulations! You have won 100 credits')
result = cashPool + 100
print('You currently have '+cashPool+' credits')
if spin1==0 and spin2==0 and spin3==0:
print('Congratulations! You have won 50 credits')
result = cashPool + 50
print('You currently have '+cashPool+' credits')
AskYesNo('Would you like to spin? Enter y/n ')
if False:
break
</code></pre>
<p>而且,我百分之百地肯定有一种更简单的方法来计算每次旋转的结果,而不是一遍又一遍地做if语句。但我又是新来的,这超出了我的能力。我不能像程序员一样思考,我不知道人们是怎么做到的。在</p>