逻辑判断
逻辑判断
表达式 | 描述 |
a == b | a等于b |
a != b | a不等于b |
a > b | a大于b |
a >= b | a大于等于b |
a is b | a和b 是同一个对象 |
a is not b | a和b不是同一个对象 |
a in A | a在A中 |
a not in A | a不在A中 |
除不同的数字类型外,不同类型的对象不能进行相等比较。
判断真假
假(False) | 真(TRUE) |
False | True |
None | not None |
0 | not 0 |
''(空) | not '' |
[](空字典) | 字典中有元素 |
()(空元组) | 元组中有元素 |
{}(空字典) | 字典中有元素 |
set() | 集合中有元素 |
>>> condition= False
>>> print ('True') if condition else print( 'False')
False
>>> condition= True
>>> print ('True') if condition else print( 'False')
True
>>> condition= None
>>> print ('True') if condition else print( 'False')
False
>>> condition= 2
>>> print ('True') if condition else print( 'False')
True
0
>>> condition= 0
>>> print ('True') if condition else print( 'False')
False
>>> condition= 2
>>> print ('True') if condition else print( 'False')
True
字符串
>>> condition=''
>>> print ('True') if condition else print( 'False')
False
>>> condition='test'
>>> print ('True') if condition else print( 'False')
True
列表
>>> condition= []
>>> print ('True') if condition else print( 'False')
False
>>> condition= [2]
>>> print ('True') if condition else print( 'False')
True
元组
>>> condition= ()
>>> print ('True') if condition else print( 'False')
False
>>> condition= (2)
>>> print ('True') if condition else print( 'False')
True
字典
>>> condition= {}
>>> print ('True') if condition else print( 'False')
False
>>> condition= {'key':'value'}
>>> print ('True') if condition else print( 'False')
True
集合
>>> condition= {} >>> print ('True') if condition else print( 'False') False >>> condition= {'key','value'} >>> print ('True') if condition else print( 'False') True
>>> condition= set() >>> print ('True') if condition else print( 'False') False >>> condition= set(['key','value']) >>> print ('True') if condition else print( 'False') True
利用 Lazy evaluation 的特性
Lazy evaluation 常被译为“延迟计算”或“惰性计算”,指的是仅仅在真正需要执行的时候才计算表达式的值。
- 避免不必要的计算,带来性能上的提升。对于 Python 中的条件表达式 if x and y ,在x 为 false 的情况下 y 表达式的值将不再计算。
- 节省空间,使得无限循环的数据结构成为可能。Python 中最典型的使用延迟计算的例子就是生成器表达式了。