在Python中,表达式和语句之间的区别是什么?


当前回答

前面的语句可以改变Python程序的状态:创建或更新变量,定义函数,等等。

表达式只是返回一些值,不能改变函数中的全局状态或局部状态。

但现在我们得到了:=,它是一个外星人!

其他回答

表达式总是求值,而语句则不是。

e.g.

变量声明和赋值是语句,因为它们不返回值

const list = [1,2,3];

这里我们有两个操作数——左边是一个变量sum,右边是一个表达式。 整个代码是一个语句,但右边的部分是一个表达式,因为这段代码返回了一个值。

const sum = list.reduce((a, b)=> a+ b, 0);  

函数调用、算术运算和布尔运算都是表达式的好例子。

表达式通常是语句的一部分。

通常需要区分这两者,以表明我们是否需要一段代码来返回一个值。

前面的语句可以改变Python程序的状态:创建或更新变量,定义函数,等等。

表达式只是返回一些值,不能改变函数中的全局状态或局部状态。

但现在我们得到了:=,它是一个外星人!

表达式是某种东西,而语句是某种东西。 表达式也是语句,但它必须有一个返回值。

>>> 2 * 2          #expression
>>> print(2 * 2)     #statement

PS:解释器总是打印出所有表达式的值。

语句表示动作或命令,例如打印语句、赋值语句。

print 'hello', x = 1

表达式是产生结果值的变量、操作和值的组合。

5 * 5 # yields 25

最后,表达式语句

print 5*5

语句包含关键字。

表达式不包含关键字。

打印“hello”是语句,因为打印是一个关键字。

“hello”是一个表达式,但列表压缩反对这一点。

下面是一个表达式语句,它在没有列表理解的情况下是正确的:

(x*2 for x in range(10))