列表和元祖、字典为空 、数字0 、布尔False 、空字符串 ==》 if 判断为False
x = ()if x: print(x) print('不为空')else: print(x) print('空')#输出:()空
注意:
x = {} 这里的 类型为空字典
x = {1,2,3,4} 这里的类型为set集合
列表和元祖、字典不为空 、数字非零 、布尔True 、非空字符串 ==》 if 判断为True
x = 1print(type(x))if x: print(x) print('不为空')else: print(x) print('空')输出:1不为空
平时工作中试使用:比如获取后台返回的json 通过反序列化转化成python对象 (序列化:将Python对象转换成json字符串;反序列化:将json字符串转换成Python对象),这个时候我们就需要判断获取的是不是为空了。
在传统的“if”语句中,此逻辑必须写在“else”语句中,但是 not 运算符否定输出并输出相反的结果。从而通过允许用户在“if”语句下编写逻辑来提高可读性。
x = {'code': 311100, 'id_list': []}print(type(x))#Python小白学习交流群:153708845if not x['id_list']: print('id_list,为空,然后我们做一些特殊处理。')