python 中if判断下面为空会怎么样

Python015

python 中if判断下面为空会怎么样,第1张

不进行循环。

ifa会首先去调用a的__nonzero__()去判断a是否为空,并返回True/False,若一个对象没有定义__nonzero__(),就去调用它的__len__()来。

Python中的if条件控制语句,让程序做出准确判断Python中常用的条件控制语句是if语句。

python判断一个对象是否为空我们可以很方便地使用 if 对象 ,这次碰到的异常让我需要重新思考这个方式的适用性。

结果直接报错如下

从dict中get到的有俩种情况,一是为空,二是为一个 pandas.DataFrame ,第一种情况if是适用的,但是对于非python预设对象DataFrame,if就出了问题。原因分析如下:

首先需要注意get到的对象的类型,使用那种类型的判空方法,而不是无脑if。对于DataFrame,判空方法为DataFrame.empty,没有括号。

其次,get不一定会返回DataFrame,做一个兼容即可:

1、判断字符串相等用==判断,代码如下:

a = 'abc'b = 'abc'if a == b:    print('a等于b')

效果如下:

2、判断是否为空使用is None方式,代码如下:

a = Nona

if a is None:    print('a 为空')

效果如下: