cindyber 发表于 2023-6-20 16:44:14

第八讲作业 抛硬币那里

为什么num % 2可以直接判断,而不用写成num % 2==0?

isdkz 发表于 2023-6-20 16:47:21

在 Python 中, num % 2可以判断一个数字是否是偶数,但它不能直接给出一个布尔值( True或False )。具体来说,当num % 2等于 0 时, num是偶数;当num % 2等于 1 时, num是奇数。

然而,Python 会将 0 视为布尔值False ,非 0 的数值(包括 1)视为True 。所以,如果你在条件判断中直接使用num % 2 ,那么结果将是:

· 如果num是偶数, num % 2将会是 0,Python 会将其解读为False 。
· 如果num是奇数, num % 2将会是 1,Python 会将其解读为True 。

所以,如果你想检查一个数字是否为偶数,使用num % 2 == 0是更清晰和准确的。这个表达式会在num是偶数时返回True , num是奇数时返回False 。这样的语义更加明确,对于阅读你代码的人来说也更易理解。

negin12 发表于 2023-6-20 16:56:45

%是取余数,num % 2的结果不是0就是1,可以和Flase、True对等(我看别人是这样说的)

cindyber 发表于 2023-6-20 17:07:04

negin12 发表于 2023-6-20 16:56
%是取余数,num % 2的结果不是0就是1,可以和Flase、True对等(我看别人是这样说的)

很有道理的亚子 感谢{:5_101:}

cindyber 发表于 2023-6-20 17:07:57

isdkz 发表于 2023-6-20 16:47
在 Python 中, num % 2可以判断一个数字是否是偶数,但它不能直接给出一个布尔值( True或False ) ...

很清楚!感谢
页: [1]
查看完整版本: 第八讲作业 抛硬币那里