鱼C论坛

 找回密码
 立即注册
查看: 1133|回复: 12

python004 课后练习 我有一个小问题

[复制链接]
发表于 2020-5-31 06:27:15 | 显示全部楼层 |阅读模式

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

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

x
temp = input('请输入一个整数:')
number = int(temp)
i = 1
while number:
    print(i)
    i = i + 1
    number = number - 1

第四讲中这一道练习题, 为什么在while loop的最后要加上number = number - 1?
谢谢各位大佬!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-31 06:38:37 | 显示全部楼层
如果没有number = number - 1的话,num就一直是输入的那个数,while number也就会一直成立,就会导致死循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-31 06:44:31 | 显示全部楼层
本帖最后由 青出于蓝 于 2020-5-31 07:33 编辑

计数,可以理解为机会。每挑战失败一次,挑战机会就-1。
number=number-1可以理解为number-=1
哦哦,看错了,number不是机会啊...这个-1是形成循坏停止的条件。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-31 07:27:09 | 显示全部楼层
要知道 Python中 只要 0 、空字符串、空列表、空字典等 都可以看作布尔类型的值为 False

只要是 非0 ,非空字符串、列表、字典 等 都可以看作布尔类型的值为 True


所以这里 while 循环时候 只要 number 不等于零就一直循环,如果没有 number = number - 1 那么就会导致死循环,这里的 number 实质作用就是循环次数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-4 10:47:07 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-4 20:56:15 | 显示全部楼层
不要最后的number = number - 1 的话会出现死循环的,会一直输出i
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 02:49:06 From FishC Mobile | 显示全部楼层
因為number不等於0 的話 while就一直為True 所以必須循環一次就要減1 知道nunber為0的時候 while就為False 就會停止循環 走下一條語句
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-5 05:10:18 | 显示全部楼层
明白了谢谢两位大佬!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 09:02:53 | 显示全部楼层
青出于蓝 发表于 2020-5-31 06:44
计数,可以理解为机会。每挑战失败一次,挑战机会就-1。
number=number-1可以理解为number-=1
哦哦,看错 ...

讲得很到位
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 09:14:39 From FishC Mobile | 显示全部楼层
while循环是当只要条件为真,他就会一直执行循环体内的内容。这时候你如果加一个number等于number加一。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 09:16:03 From FishC Mobile | 显示全部楼层
Number的值就会每循环一次加一,当number 的值不满足while的条件时,就退出循环。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 09:17:02 From FishC Mobile | 显示全部楼层
搞错了,是number 减一。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 09:17:34 From FishC Mobile | 显示全部楼层
望采纳。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-27 01:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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