adzs552 发表于 2020-6-23 18:59:47

谁能给我解答下关于数字的问题。

本帖最后由 adzs552 于 2020-6-23 19:02 编辑

具体如下图:
为什么if 2:会输出1,而不是2.。。就是为什么if 2:不是输出else的内容。按我想象的,除了1是True,其他都应该是False才对啊。

qiuyouzhi 发表于 2020-6-23 19:00:44

在Python中,只要不是0,[],{},(),"",''都是True。

heidern0612 发表于 2020-6-23 19:03:11

if 2的话,因为2不是空,不是0,不是假值,所以条件直接成立,打印了1.

if后面主要判断的是否空,是否假,是否0,你写个数字上去,类型有了,也不属于前三者,自然条件就成立了。

adzs552 发表于 2020-6-23 19:03:13

qiuyouzhi 发表于 2020-6-23 19:00
在Python中,只要不是0,[],{},(),"",''都是True。

多谢了。。。看来是我基础不行。。。。思路错了。。。

adzs552 发表于 2020-6-23 19:05:23

heidern0612 发表于 2020-6-23 19:03
if 2的话,因为2不是空,不是0,不是假值,所以条件直接成立,打印了1.

if后面主要判断的是否空,是否假 ...

多谢了。

Python初学者8号 发表于 2020-6-23 19:42:02

因为0是默认为false的,你试试 输入负数,他是默认为true的
页: [1]
查看完整版本: 谁能给我解答下关于数字的问题。