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