2.5 表达式
表达式是值、变量和操作符的组合。单独一个值可以看作表达式,单独的变量也可以看作表达式。
这个怎么理解呢?小萌不解地看着这么短短一条语句,脑袋怎么都拐不过弯。“今天的午餐真不错”,原来是小智,小萌突然来了精神,可以向小智请教啊。
“小智,中午好,能帮我看看这个怎么理解吗?”小智过去看了看,思考了一下,给小萌做了如下讲解。
表达式和语句一般不容易区分,很多人会将两者混在一起。那么语句和表达式之间有什么区别呢?
表达式是某事,语句就是做某事,也就是告诉计算机做什么。比如3*3是9,print(3*3)输出也是9。区别在哪里呢?我们在交互模式下输入如下:
>>> 3*3 9 >>> print(3*3) 9
在交互模式下,结果都是一样的。这是因为解释器总是输出所有表达式的值(内部都使用相同的函数对结果进行呈现,后面会有详细介绍)。一般情况下,Python不会这么做,毕竟3*3这样的表达式不能做什么有趣的事情,而编写print(3*3)会有一个显式的输出结果9。
语句和表达式之间的区别在赋值时表现得更加明显。因为语句不是表达式,所以没有值可供交互式解释器输出。比如在交互模式下输入如下:
>>> a=100 >>> >>> 10*10 100
从输入结果可以看到,赋值语句输入完成后,下面立刻出现了新的提示输入符。表达式输入完成后,下面立刻得到了结果。不过对于赋值语句,有些东西已经变了,变量a现在绑定了一个值100。
这个是语句特性的一般定义:它们改变了事物。比如,赋值语句改变了变量,print语句改变了屏幕显示的内容。
赋值语句可能是所有计算机程序设计语言中最重要的语句类型,尽管现在还难以说清赋值语句的重要性。变量就像临时的“存储器”(就像厨房中的锅碗瓢盆一样),强大之处在于,在操作变量时并不需要知道存储了什么值。比如,即使不知道x和y的值到底是多少,也会知道x*y的结果就是x和y的乘积。所以,可以通过多种方法使用变量,而不需要知道在程序运行时,最终存储的值是什么。