编程的本质就是数据和运算,数据由基本数据类型、数据结构来表示,运算就是对这些数据的各种操作,基本的加减乘除、是非判断、流程控制等等。这些操作就是今天我们要讲的运算符、表达式和语句。
前面我们学习Python的基本语法时,讲到了Python程序的行的概念,这个行再细分就是运算符(Operators)、运算对象(Operands)、表达式(Express)、语句(Statements)。
提示:运算和操作这两个概念在编程中往往是一样的
比如下面这一行代码:
a = 5; b = a + 7; c = a if a > b else b
先来分解一下这一行:
- 语句: 由表达式组成。此例共三条语句,用分号
;
分开,即一个物理行有三个逻辑行; - 表达式: 由运算符和操作对象组成。此例中的表达式有
a + 7
,a > b
等; - 运算对象: 即各种对象。此例中的
a, b, c, 5, 7
等。
用一行表示它们的关系就是:
运算对象 + 运算符 -> 表达式 -> 语句
运算对象和运算符构成表达式,表达式构成语句
运算对象
运算对象就是由各种对象构成的集合,这些对象里面有些是常量,有些是变量。
常量
Python中的常量我们已经见过很多了,比如整数:9, 7, 8
等等,浮点数:3.14, 0.618
等等,字符串:'猿人学Python'
,这些常量我们看到它们时就知道它们的意思,这就是字面意义上的常量。
字面意义上的常量就是按照它们的字面意义使用它们的值。比如,数字8
总是代表它自己,它是一个常量,不能改变它的值。
变量
常量代表具有特定意义的对象,但不足以满足编程的需要。编程经常需要一种既可以存储数据有可以对它进行运算(操作)的东东,这个东东就是变量。编程中要经常使用变量,就需要给变量起个名字:变量名。变量名的起名规则就是前面讲Python基本语法时提到的标识符,忘了的小猿可以再去看看那一节。
最开始那一行Python代码中的a, b, c
都是变量,而5, 12, 5
就是它们各自存储的值。如果再来一句a = a + 3
,a</