我正在尝试制作一个骰子游戏,掷10次骰子,如果你得到2个1,你就会得到额外的分数
这是for循环
import random
rolls = 10
total = 0
for i in range(1, rolls + 1):
n = random.randint(1, 6)
total += n
print(f'Roll {i}: [{n}]')
如何让它告诉我在任意一次投掷中是否有2个1
两个骰子表示两个随机输入。所以你需要做两个randint
。然后您可以检查两者是否都是1
。
import random
rolls = 10
total = 0
for i in range(1, rolls + 1):
n1 = random.randint(1, 6)
n2 = random.randint(1, 6)
if n1 == 1 and n2 == 1:
total += 1
print(f'rolled {n} times. Got both 1s {total} times')
你可以用一个变量跟踪有多少个1,让我们调用numberOfOnes
并在每次摇出1时增加它。
import random
rolls = 10
total = 0
numberOfOnes = 0
for i in range(1, rolls + 1):
n = random.randint(1, 6)
total += n
if n == 1:
numberOfOnes += 1
print(f'Roll {i}: [{n}]. {numberOfOnes} 1's rolled so far!')
#here we'll check if we rolled 1's at least twice
if numberOfOnes >= 2:
print("You got an extra point!")
如果你想处理两个骰子(滚动10次),你可以检查@MSH的答案。