假期第(16)天

条件表达式-1
l 在选择和循环结构中,条件表达式的值只要不是
False、0(或0.0、0j等)、空值None、空列表、空元组、
空集合、空字典、空字符串、空range对象或其他空
迭代对象,Python解释器均认为与True等价
l 几乎所有合法表达式都可作为条件表达式
l 算术运算符:+、-、*、/、//、%、**
l 关系运算符:>、<、==、<=、>=、!=,可连用
>>> 1<2<3
True
>>> 1<2>3
False
>>> 1<3>2
True
l 测试运算符:in、not in、is、is not
l 逻辑运算符:and、or、not,注意短路求值
l 位运算符:~、&、|、 ^、 <<、>>
l 矩
阵乘法运算符:@
选择
构4
条件表达式-2
l 在Python条件表达式中不允许使用赋值运算符"="
>>> if a=3:
SyntaxError: invalid syntax
>>> a = [1, 2, 3]
>>> if a: #使用列表作为条件表达式
print(a)
[1, 2, 3]
>>> a = []
>>> if a:
print(a)
else:
print('empty')
empty
>>> for i in range(0, 11, 1): #遍历迭代对象中的所有元素
s += i
>>> print(s)
55
选择结构5
逻辑运算
l 逻辑运算符"and"和"or"具有短路求值或惰性求值的特
点,也就是只计算必须计算的表达式的值
l 在设计条件表达式时,如果能够大概预测不同条件失
败的概率,并将多个条件根据"and"和"or"运算的短路
求值特性来组织先后顺序,可以大幅度提高程序运行
效率
>>> 3 and 5
5
>>> 3 or 5
3
>>> 0 and 5
0
>>> 0 or 5
5
选择结构6
选择结构的形式-1
l 单分支选择结构【
03P6.py】
if 表达式:
语句块
x = input('Input two number:')
a, b = map(int, x.split())
if a > b:
a, b = b, a
#序列解包,交换变量的值
print(a, b)
l 双分支选择结构
if 表达式:
语句块1
else:
语句块2
>>> chTest = ['1', '2', '3', '4', '5']
>>> if chTest:
print(chTest)
else:
print('Empty')
选择结构7
选择结构的形式-2
l Python还支持如下形式的表达式:
value1 if condition else value2
l 当
表达式
co
nd
iti
on
值与
T
rue等价时
表达
v
al
ue
1,否则表
v
al
ue2。在v
alu
e1和
va
lu
e2
还可
以使用复杂表达式,包括函数调用和基本输出语句。这个结
构的表达式也具有惰性求值的特点
>>> a = 5
>>> print(6) if a>3 else print(5)
6
>>> print(6 if a>3 else 5)
6
>>> b = 6 if a>13 else 9
>>> b
9
选择结构8
选择结构的形式-3
l 多分支选择结构
if 表达式1:
语句块1
elif 表达式2: #注意此处不能写成else if,可多层
语句块2
else:
语句块4
l 选择结构的嵌套,注意:缩进必须要正确并且一致
if 表达式1:
语句块1
if 表达式2:
语句块2
else:
语句块3
else:
if 表达式4:
语句块4

 

posted @ 2022-01-16 18:29  我的未来姓栗山  阅读(33)  评论(0)    收藏  举报