Python表达式
3.4 Python表达式
Python表达式是运算符
和操作数
进行有意义排列所得的组合。操作数可以是值
、变量
、标识符
等。单独的一个值或一个变量也是一个表达式。
表达式是Python程序中最常见的代码。
表达式是一段可以被求值
的代码。因为可以被求值,所以一般表达式可以写在赋值语句=
的右边。表达式可以作为语句的组成部分。
以下都是Python表达式:
5 + 3
3 ** 2
-66
a > 3
b == c
d in e
f is not g
not h
3.4.1 赋值表达式
一个常见用例是在处理匹配的正则表达式的时候:
if matching := pattern.search(data):
do_something(matching)
或者是在处理分块的文件流的时候:
while chunk := file.read(9000):
process(chunk)
3.4.2 条件表达式
条件表达式(有时称为三元运算符
)在所有 Python 运算中具有最低的优先级。表达式 x if C else y 首先是对条件 C 而非 x 求值。如果 C 为真,x 将被求值并返回其值;否则将对 y 求值并返回其值。其语法格式为:
为真时 if 条件表达式 else 为假时 # 斜体为需要替换的内容,下同
示例1:
>>> a = 5 if 3 > 2 else 1
>>> a
5
示例2
>>> print(“hello”) if 5 == 33 else print(“world”)
world
3.4.3 lambda 表达式
lambda 表达式(有时称为 lambda 构型)被用于创建匿名函数。表达式:
lambda 参数: 表达式
会产生一个函数对象。该未命名对象的行为类似于用以下方式定义的函数:
def <lambda>(*参数*):
return 表达式
关于lambda表达式我们将会在函数章节进行详细介绍。
3.4.4 表达式的求值顺序
Python 按从左至右的顺序对表达式求值。但注意在对赋值操作求值时,右侧会先于左侧被求值。
练习
1、将教程中所有的表达式示例全部手敲一遍并熟悉