鱼C论坛

 找回密码
 立即注册
查看: 2421|回复: 8

[已解决]看书自学的纯小白第二个求助

[复制链接]
发表于 2020-3-13 10:43:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
temp = input('请输入一个整数:')
number = int(temp)
i = 1
while number:
    print(i)
    i = i + 1
    number = number - 1
运行后显示
请输入一个整数:5
1
2
3
4
5'

请问:
1. “i”代表什么?
2.“i=i+1”表示什么意思?
3. “number = number - 1” 又代表什么意思?
4.“number = number - 1”的这个1改成2.3.4中任何一个,运行,都会从1到2再到3一直延续下去;改成5,运行只显示1,这是何故?
最佳答案
2020-3-13 11:10:41
1. i 得分情况 这题没给背景 任何意义都没有
2. i = i+1 每次 i 这个变量的值加一
3. number 在这个题里相当于计数器
4. 因为 number 如果用户输入是5 就是5  再 - 5 的话 就是0了 while判断下次就是false就不运行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-13 10:47:03 | 显示全部楼层
本帖最后由 qiuyouzhi 于 2020-3-13 10:49 编辑

1,i代表需要打印的空格
2,假如第一次打印了1个空格,而下一次就要打印两个空格,所以要+1
3,因为有一个循环,只要number不为0就继续,所以要每循环一次再-1。
4,你输入了5,又减掉了5,等于0,而0是假值,只会打印一次
(只有0, False, {}, [], ()等等是假值,其他的比如-1都是真)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-13 11:10:41 | 显示全部楼层    本楼为最佳答案   
1. i 得分情况 这题没给背景 任何意义都没有
2. i = i+1 每次 i 这个变量的值加一
3. number 在这个题里相当于计数器
4. 因为 number 如果用户输入是5 就是5  再 - 5 的话 就是0了 while判断下次就是false就不运行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-13 11:39:13 | 显示全部楼层
ArmandXiao 发表于 2020-3-13 11:10
1. i 得分情况 这题没给背景 任何意义都没有
2. i = i+1 每次 i 这个变量的值加一
3. number 在这个题里 ...

换成 2或者3 或者4 为什么会无限显示
1
2
3
4
...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-13 12:38:19 | 显示全部楼层
temp = input('请输入一个整数:')
number = int(temp)
i = 1
while number:
     print(i)
     i = i + 1
     number = number - 1
运行后显示
请输入一个整数:5
1
2
3
4
5'

请问:
1. “i”代表什么?   -->给定一个变量i,你赋值的初始值是1
2.“i=i+1”表示什么意思?  ————>在循环里,每循环一次,新变量I的值=本身的值增加1
3. “number = number - 1” 又代表什么意思?————>在循环里,每循环一次,新number的值=本身的值-1
4.“number = number - 1”的这个1改成2.3.4中任何一个,运行,都会从1到2再到3一直延续下去;改成5,运行只显示1,这是何故?
————>mumber的值不为0,就会一直循环下去,如果你输入的number的值是2,这里减二,循环里就打印一次I的值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-13 15:33:37 | 显示全部楼层
rb2448 发表于 2020-3-13 11:39
换成 2或者3 或者4 为什么会无限显示
1
2

把啥换了啊 你说清楚啊。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-13 15:54:18 | 显示全部楼层
ArmandXiao 发表于 2020-3-13 15:33
把啥换了啊 你说清楚啊。。

number = number - 1
中的1换成2或者3 或者4
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-14 08:21:43 | 显示全部楼层
rb2448 发表于 2020-3-13 15:54
number = number - 1
中的1换成2或者3 或者4

哦哦 因为 整数除了0都是 True
if -1 也返回true
只有-1才能百分百让整数达到0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-14 08:31:24 | 显示全部楼层
I代表一个计数器,i=i+1说白了可以理解为 第一个i为Z,也就是i+1=Z,然后这个Z=i,这个i就是新的变量名,并不是原来的那个i,而是Z=i,Z为i+1.
number那个跟i的思路一样,都是这样,可能不太好理解,需要多理解理解,这个东西很绕,但是绕明白了甚至还可以简写为i+=i,是可以的,但是理解不了不如试试我的这个方法,把第一个i想象为别的字母
这个东西写出来不易明白,还是需要理解、
至于你说number-那个不变,是因为看上面,是print(i),注意是I,而不是number,你看的值其实是i的值。(print(i)不用多说了吧)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 03:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表