离小熊 发表于 2022-5-7 16:33:15

小白求助

temp = input('请输入一个整数:')
number = int(temp)
i = 1
while number:
    print(i)
    i = i + 1
    number = number - 1
小白询问这里的 i = 1的意思是什么啊?

离小熊 发表于 2022-5-7 16:34:44

temp = input('请输入一个整数:')
number = int(temp)
i = 1
while number:
    print(i)
    i = i + 1
    number = number - 1,没有这一行则会一直打印

Twilight6 发表于 2022-5-7 16:42:36


小白询问这里的 i = 1的意思是什么啊?

i = 1 表示将 1 赋值给 i 这个变量,也可以理解为 i 这个变量指向 1 这个数据

这里这样是初始化 i 的数值,因为在 循环中 i = i + 1 要用前一次 i 的值,加上 1

为什么没有最后一行代码会死循环?

死循环是因为, while 循环条件是 number 值,因为 number 值这里是 int

所以 while 循环过程中 只有为number = 0 时 while循环条件才不成立,此时才会退出循环,而你去掉了最后一行

导致无论如何循环 number 值都不会递减改变,所以也就不能能 等 0 导致循环条件不成立而退出

不会起名字的我 发表于 2022-5-7 17:00:08


temp = input('请输入一个整数:')
number = int(temp)
i = 1   #声明一个变量,名为 i ,将其赋值为 1
while number:
    print(i)
    i = i + 1
    number = number - 1#这一行是让 number 变量减少 1 ,因为上面的 while 语句后面有 number ,那默认就是 number 为正数就循环
页: [1]
查看完整版本: 小白求助