2017-04-06 18 views
0

以下程序按预期工作。它首先打印一个字符串,然后将3个变量分配给3个独立的整数。用这些整数,它检查第三个是否不等于第一个整数加上第二个整数。如果前两个整数在加起来后不等于第三个整数,则程序打印出所有三个整数,然后重复整数的分配并继续,直到前两个整数相加为第三个整数。实施例:6 + 6 = 12 OR 3 + 3 = 10通过转换一段时间缩短蟒蛇中的骰子匹配游戏

from __future__ import print_function 
import random 
print("HERE COMES THE DICE!") 
r1 = random.randint(1,6) 
r2 = random.randint(1,6) 
total = r1 + r2 
while r1 != r2: 
    r1 = random.randint(1,6) 
    r2 = random.randint(1,6) 
    total = r1 + r2 
    print("Roll #1: {}".format(r1)) 
    print("Roll #2: {}".format(r2)) 
    print("The total is {}!".format(total)) 

我目前与此方案具有的问题是如何通过while循环转换为do-while循环缩短它。我对Java中的do-while循环有所了解,但对Python版本没有任何帮助。

+0

没有做'同时'在蟒蛇。这就是'while'是 –

+0

@ Ev.Kounis我认为有办法以某种方式模拟或模仿蟒蛇 – jackmasterlooter

+0

@RichardGreen如果你觉得它是,请投票结束这个问题,我会这样做 – jackmasterlooter

回答

0

Python没有while循环一做,所以最接近模拟它会改变这一点:

while r1 != r2: 
    [...] 

弄成这个样子:

while True: 
    [...] 
    if r1 != r2: 
     break