湘潭小五 发表于 2021-2-27 13:58:12

为什么会一直循环,不执行循环里的b = a + 1

import random
a = random.randint(1,10)
b = 0

while b < 10:
    b = a + 1

    print(b)

昨非 发表于 2021-2-27 14:02:57

import random

b = 0

while b < 10:
    a = random.randint(1,10)
    b = a + 1
    print(b)

昨非 发表于 2021-2-27 14:07:59

把a = random.randint(1,10)这个随机数放到while里,这样每次循环a都重新取
因为结束条件是b大于10,所以a的大小不确定
执行几次循环、打印多少次b也不确定

湘潭小五 发表于 2021-2-27 14:08:30

昨非 发表于 2021-2-27 14:02


把 a = random.randint(1,10)放进循环里,每次循环不是都会产生一个随机数吗

昨非 发表于 2021-2-27 14:09:03

湘潭小五 发表于 2021-2-27 14:08
把 a = random.randint(1,10)放进循环里,每次循环不是都会产生一个随机数吗

对的,每次循环a都在变动

湘潭小五 发表于 2021-2-27 14:15:29

昨非 发表于 2021-2-27 14:09
对的,每次循环a都在变动

能不能上面产生一个随机数,后面的里每次这个随机数上+1咧,不会每次产生一个

昨非 发表于 2021-2-27 14:16:46

湘潭小五 发表于 2021-2-27 14:15
能不能上面产生一个随机数,后面的里每次这个随机数上+1咧,不会每次产生一个

关键看你想怎样咯
想从头到尾用一个a就放到外面

昨非 发表于 2021-2-27 14:19:02

import random

a = random.randint(1,10)

while a < 10:
    a = a + 1
    print(a)

直接把b去掉,在a的基础上加1,就不会死循环了
页: [1]
查看完整版本: 为什么会一直循环,不执行循环里的b = a + 1