#一、对象的固有属性:真或是假"""
真、假规则:
1、数字如果非0,则为真
2、对象如果非空,则为真
3、None类型为假
""""""
对象属性为假的列表:
运行结果:False False False False False False
"""
boolType = ["",[],{},0,0.0,None]
for item in boolType:
ifnot item:
print"False",
if [None,None]:#Trueprint"True"#二、使用内置的bool函数测试对象的真值属性"""
输出结果:
True True True True False False
"""
ins = ['1',1,[1],{0:0},None,[]]
for i in ins:
print bool(i),
#三、布尔and/or/not运算"""
运算规则:
X and Y :若X、Y均为真,则结果为真
X or Y:若X或Y为真,则结果为真
not X:若X为假,则结果为真
""""""
注意事项:
1、X和Y可以是任何真值或返回真值的表达式
2、布尔and和or运算符在Python中会返回真或假的对象,而不是True或False。
""""""
输出结果:3 1 3 {}
or返回值逻辑:(短路运算)
1、python会从左至右求算操作对象,然后返回第一个为真的操作对象。
2、python在找到第一个真值操作数的地方停止。
3、如果操作数均为假,返回最后一个为假的操作数
"""print3or2,0or1,[] or3,[] or {}
"""
输出结果:2 3 [] {}
and返回值逻辑:(短路运算)
1、python会从左至右求算操作对象,然后返回第一个为假的操作对象。
2、python在找到第一个为假操作数的地方停止。
3、如果操作数均为真,返回最后一个为真的操作数
"""print3and2,2and3,[] and {},2and {}
#四、if/else三元表达式#A = Y if X else Z"""
输出结果:
T f
"""
A = 'T'if"spam"else'f'
B = 'T'if""else'f'print A,B
#使用序列索引取值的方式print ['T','f'][bool("")],
print ['T','f'][bool('spam')]