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


当前回答

声明:

语句是执行某些操作的动作或命令。例:if - else,循环…等等

val a: Int = 5
If(a>5) print("Hey!") else print("Hi!")

表达式:

表达式是值、操作符和字面量的组合,可以产生一些东西。

val a: Int = 5 + 5 #yields 10

其他回答

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

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

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

Python将表达式称为“表达式语句”,所以这个问题可能还没有完全形成。

一条语句包含你在Python中可以做的任何事情:计算值、赋值、删除变量、打印值、从函数返回、引发异常等等。完整的名单在这里:http://docs.python.org/reference/simple_stmts.html#

表达式语句仅限于调用函数(例如, Math.cos (theta)”)、运算符(例如“2+3”)等来生成一个值。

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

e.g.

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

const list = [1,2,3];

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

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

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

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

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

尽管这与Python无关:

表达式的计算结果是一个值。 语句做一些事情。

>>> x + 2         # an expression
>>> x = 1         # a statement 
>>> y = x + 1     # a statement
>>> print y       # a statement (in 2.x)
2

表达式:

表达式由对象和运算符组合而成。 表达式有一个值,值有一个类型。 简单表达式的语法:<object><operator><object>

2.0 + 3是一个计算结果为5.0的表达式,并且有一个与之关联的类型浮点数。

语句

语句由表达式组成。它可以跨越多行。