使用while循环减去

时间:2015-09-24 11:11:11

标签: python while-loop

我尝试使用另一个变量h从名为1000的变量中减去x,该变量设置为从3到{65获取随机数{1}}使用while循环并且它一次又一次地给我相同的数字而不是减去任何东西。

import random

x = random.randrange(3, 65)
h = 1000

while True:
    h > x
    print(h - x)
    if x > h:
        break

print('complete')

4 个答案:

答案 0 :(得分:1)

你需要在循环中设置随机数并更新h,否则循环不会结束,因为h总是大于x:

import random
h = 1000
x = random.randrange(3, 65)

while h>x:
    x = random.randrange(3, 65)
    h -= x
    print h
print "complete"

如果你想在循环中减去相同的随机数,只需从循环中删除x赋值。

答案 1 :(得分:1)

这里有几件事情:

  1. 您不会再将减法结果分配给h
  2. 你没有为你的随机生成器播种,它会在每次运行时给你相同的数字
  3. 你的测试应该是循环中的第一件事,否则h可能会消极
  4. 取决于你想要的东西;如果你想要每个循环迭代一个随机数,x = random.randrange(3, 65)需要在循环中
  5. 代码:

    import random
    random.seed()
    
    x = random.randrange(3, 65)
    h = 1000
    
    while True:
        #put x = random.randrange(3, 65) here if you want a random number every loop iteration
        if x > h:
            break
        h = h - x
        print(h)
    
    print('complete')
    

答案 2 :(得分:0)

在循环中有 x = random.randrange(3,65)并将“h> x”更改为“if h> x”并相应地进行缩进

答案 3 :(得分:0)

import random

x = random.randrange(3, 65)
h = 1000

while h > x:
    print(h - x)
    h = h-x

print('complete')