李韵涵 发表于 2017-5-24 10:43:47

输入一个整数,为何得到的是1到整数

temp = input('请输入一个整数:')
number = int(temp)
i = 1
while number:
    print(i)
    i = i + 1
    number = number - 1
各路大神求解

thexiosi 发表于 2017-5-24 11:03:14

本帖最后由 thexiosi 于 2017-5-24 11:06 编辑

你好

while number:
    number = number - 1

依据上面的代码,number是几,该循环就循环几次。如:number = 3 ,就循环3次(当number=0时,循环结束)。

补上其余的代码:
while number:
    print(i)
    i = i + 1
    number = number - 1

以number = 3为例,循环体循环3次。
第一次循环打印1:i此时为1,接下来i+1、i的值为2
第二次循环打印2:i此时为2,接下来i+1、i的值为3
第三次循环打印3:i+1后变为4,循环体结束(因为此时number = 0)

TEys0fRedLiH 发表于 2017-5-24 18:03:42

简单的提醒一下.
因為while的用法就是,根据特定条件, 重复 执行某个代码块.
每次执行完毕,会重新检查是否符合条件,直到表达式为false.

最后面的
number=number-1
约束了循环的次数,当number为0 的时候就会终止循环.
页: [1]
查看完整版本: 输入一个整数,为何得到的是1到整数