首页 新闻 搜索 专区 学院

求大神解答,将条件改成if num % 2 == 1有什么区别吗

0
[待解决问题]

求100以内的偶数(包含100)

num = 100
while num:
if num % 2 :
print()
else:
print(num)
num = num - 1

明明有头发的主页 明明有头发 | 菜鸟二级 | 园豆:202
提问于:2020-04-13 21:45
< >
分享
所有回答(4)
0

没有区别,if里面本身就是加判断条件,0和1也代表判断条件,1是true,0是false。num是奇数的时候num%2==1,num是偶数时num%2==0。所以num%2和num%2==1没有区别,第一种是简便写法

西红柿里没有番茄 | 园豆:635 (小虾三级) | 2020-04-13 22:43

大神,那如果我不给题目的话,你是如何判断%2==1还是等于0

支持(0) 反对(0) 明明有头发 | 园豆:202 (菜鸟二级) | 2020-04-13 22:48

@明明有头发: 你不给题目那就不存在这种简便写法了啊,布尔值对应的是0和1,一个数除以2的余数也是0和1,刚好对应才能这样简便写。所以不给题目,你这个问题也没意义。抛开题目看,不管你自己给定的判断值是的什么,返回的都是0或1,即使是字符串比较返回的也是0和1啊,对应false和true。也就是布尔值判断。

支持(0) 反对(0) 西红柿里没有番茄 | 园豆:635 (小虾三级) | 2020-04-14 00:31
0

有区别,一个==1是根据你的值判断的,如果没有==是根据他的布尔值判断,本质区别很大,楼上别误导小朋友

小小咸鱼YwY | 园豆:1550 (小虾三级) | 2020-04-13 23:17

感谢大佬

支持(0) 反对(0) 明明有头发 | 园豆:202 (菜鸟二级) | 2020-04-13 23:19

结合题意看,题目是要求偶数,他放在这个题目里这两种是没区别的哇。单独拎开看当然有区别

支持(0) 反对(0) 西红柿里没有番茄 | 园豆:635 (小虾三级) | 2020-04-14 00:23
0

没区别没区别

会长 | 园豆:8070 (大侠五级) | 2020-04-14 13:36

感谢,感谢!

支持(0) 反对(0) 明明有头发 | 园豆:202 (菜鸟二级) | 2020-04-20 12:12
0

根据布尔值来判断和利用 == 来判断是有本质上很大的区别的啊。只是咋这里来看效果是一样的而已。
就像 !(b == 1) 和 b != 1, 效果是一样的,但是本质上利用的判断方法却完全不一样

雪之下,树之旁 | 园豆:198 (初学一级) | 2020-04-20 11:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册