老师,这两种有什么区别?

老师,这两种有什么区别?

if (num % 3 == 0 or num % 7 == 0) and not(num % 3 == 0 and num % 7 == 0):

if (num % 3 == 0 or num % 7 == 0) and (num % 3 != 0 and num % 7 != 0):


= 0):

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好。两个语句实现的功能是一样的,只是在写法上不同:

1、not(num % 3 == 0 and num % 7 == 0):会先得到能同时被3和7整除的数后取反,即不能同时被3和7整除

2、num % 3 != 0 and num % 7 != 0:num值除以3和除以7均不等0,也是不能同时被3和7整除

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

  • 慕的地8004648 提问者 #1
    但是第二种运行的结果为0。第一种结果为39。
    2019-11-07 17:57:40
  • 好帮手慕美 回复 提问者 慕的地8004648 #2
    同学,你好。(num % 3 == 0 or num % 7 == 0) and (num % 3 != 0 and num % 7 != 0):当num=3时,and左边条件为True,右边为False,因此if条件不成立,没有输出结果。两个条件用and连接时,是没有一个数符合能被3或7整除,但同时又不能被3和7整除的。祝学习愉快~~~~
    2019-11-07 18:17:18
  • 慕的地8004648 提问者 回复 好帮手慕美 #3
    明白了 非常感谢。
    2019-11-07 19:37:12
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师