鱼C论坛

 找回密码
 立即注册
查看: 1634|回复: 5

对于输出的答案还是不怎么理解,求解

[复制链接]
发表于 2020-6-4 11:44:23 | 显示全部楼层 |阅读模式

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

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

x
for i in range(10):
    if i%2 != 0:
        print(i)
        continue
    i +=2
    print(i)

输出答案:
2
1
4
3
6
5
8
7
10
9

for i in range(10):
    if i%2 != 0:
        print(i)

对于这部分代码我能理解,就是求余数,但是
continue
    i +=2
    print(i)
这部分代码我就懵逼了,请大神为我解答下,谢谢。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-4 21:31:16 | 显示全部楼层
简单来说就是0-9的数字  偶数加2输出  奇数直接输出    i%2 就是判断奇偶用的
0+2, 1,2+2,3。。。。。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 08:46:55 | 显示全部楼层
执行到continue,当前也就是本次会跳过下面的代码,重新执行循环,按你的代码,就是输出内容之后,跳过后面的i+=2和最后一个输出,进行下一次循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 13:04:31 | 显示全部楼层
for i in range(10):# i等于从0开始到9的每一个数字
    if i%2 != 0:   #当i 除以2 不等于0 的时候,也就是i 是奇数的时候进入循环
        print(i)   #举例 i等于0 的时候  0%2 == 0
                   #所以不进入循环,执行下一个代码 也就是 0+2==2,以此类推
    i +=2          #i==0+2==2
    print(i)       #打印结果 就是2
                   #这一次执行完了之后 继续下一个 也就是i==1,1%2==1
                   #直接打印结果1
                   #以此类推,打印所有结果
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 13:06:42 | 显示全部楼层

上面说漏了一个  continue
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 13:10:15 | 显示全部楼层
latiao-python 发表于 2020-6-5 13:06
上面说漏了一个  continue

这个意思是  continue语句的作用是跳过本次循环体中余下尚未执行的语句,立即进行下一次的循环条件判定,可以理解为仅结束本次循环。你放这个地方没有意义,因为本来你现在的代码也是执行下一个和if i%2 != 0 平级的代码  i +=2
    print(i)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-11 16:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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