Python中内置类型和定义了__nonzero__的魔术方法的类都能在if语句中呗解释为True或False
1 >>> a =[1,2,3] 2 >>> if a: 3 print('I found something') 4 5 6 I found something 7 >>> b = [] 8 >>> if not b: 9 print('Empty') 10 11 12 Empty 13 >>> b = [] 14 >>> if b: 15 print('Empty') 16 17 18 >>> a =[1,2,3] 19 >>> if not a: 20 print('I found something') 21 22
代码中a,b是用户自定义的2个列表,有元素和无元素。有元素列表a,if a输出结果为if函数定义的内容,表示True。if not a输出结果为空,表示False。同理列表b
空序列为假,被当作False处理。