一、布尔值
在编程世界中几乎所有类型的数值都是真,也就是True。
- 除了空字符串外,所有字符串都是True;
- 除了0之外,所有的数字都是True;
- 所有的列表list、集合set、字典都是Ture,除了空列表或者空集合或者空字典外。
print(bool("abc"))
print(bool(1234))
print(bool(["apple","banana"]))
执行结果:
True
True
True
还有一些数值的结果是假,也就是False。比如空元组,空列表,空字典,还有数字0,None和False,它们的布尔值都是False。
print(bool(False))
print(bool(0))
print(bool(None))
print(bool(""))
print(bool(()))
print(bool([]))
print(bool({}))
执行结果:
False
False
False
False
False
False
False
二、比较运算符
if 语句使用数字中的比较运算符,我们回顾一下之前学过的运算符知识。
运算符 | 描述 | 示例 |
== | 等于 | a==b |
!= | 不等于 | a!=b |
> | 大于 | a>b |
< | 小于 | a<b |
>= | 大于或等于 | a>=b |
<= | 小于或等于 | a<=b |
比较运算符是可以链接的,比如a<b==c,用于判断a是否小于b,而且b是否等于c。
三、布尔运算符
布尔逻辑运算符主要有逻辑与(and)、逻辑或(or)、逻辑非(not)、逻辑异或(xor)四种。
可以使用布尔运算符and、or来组合比较运算,也可以使用not来否定比较运算的结果。
比较运算的优先级要高于布尔运算。
not的优先级要高于and和or。
另外,可以将比较结果或其他布尔表达式指定给变量,比如:
string1 = string2 = string3 = "少儿Python编程"
string_null = string1 or string2 or string3
print(string_null)
执行结果:
少儿Python编程
四、any() 和 all()函数
函数 | 描述 | 示例 | 结果 |
any(iterable) | 检测list中的项目是否有Ture | any([False,True,False]) | True |
all(iterable) | 检测list中的项目是否都是Ture | all([0,1,1]) | False |
五、if与elif与else
elif关键字是Python表示“如果前面的条件不成立,那么试试这个条件”的方式。
a = 300
b = 33
if b > a:
print("b大于a")
elif a == b:
print("a和b是相等的")
else:
print("a比b大")
执行结果:
a比b大
六、嵌套if语句
可以在if语句中包含if语句,这被称为嵌套if语句。
x = 40
if x > 10:
print("大于10")
if x > 20:
print("也大于20")
else:
print("不大于20")
七、单行形式if语句
如果只有一条语句要执行,则可以将其与If语句放在同一行。
a=10
b=5
if a > b:print("a大于b")
执行结果:
a大于b
八、单行形式if…else语句
如果只有一个语句要执行,一个用于If,另一个用于else,则可以将所有语句放在同一行:
def max(x,y):
result = x if x>y else y
return result
def max(x,y):
return x if x>y else y