- 1.条件运算符
- 1.1 if else
- 1.2 运算符的优先级
- 1.3 if语句
- 2.input()函数
- 3.if-else语句
- 4.if-elif-else语句
- 5.while
1.条件运算符
1.1 if else
条件运算符可以将语句与语句连接,用于逻辑判断。形如下:
语句1
if
表达式
else
语句2
如果表达式的判断结果为True,则会执行语句1,反之,则会执行语句2。
1.2 运算符的优先级
and
比 or
的优先级高。
通过语句m = 2 or 3 and 4
可以判断and
和or
的优先级。
- 如果or比and的优先级高,则会先执行
2 or 3
,得出2
后再执行2 and 4
,得出结果m = 4
。 - 如果
or
和and
优先级一样高,则按照从左到右依次执行语句的原则,先执行or
,再执行and
,得出结果m = 4
。 - 如果
or
比and
优先级低,则先执行and
,再执行or
,得出结果m = 2
。 - 以下为所有运算符优先级排列(优先级由上往下越高):
- lambda
- if – else
- or
- and
- not x
- in, not in, is, is not, <, <=, >, >=, !=, ==
- |
- ^
- &
- <<, >>
- +, -
- *, @, /, //, %
- +x, -x, ~x
- **.
- await x
- x[index], x[index:index], x(arguments…), x.attribute
- (expressions…),[expressions…], {key: value…}, {expressions…}
也可以在python documentation中的Expressions > Operator precedence中查看。
1.3 if语句
if语句可以按照条件选择执行不同的代码。
if 表达式:
语句1;
语句2;
......
如果表达式返回的结果为True,则执行冒号后的代码块,反之,则不执行。
什么是代码块?
代码块就是指一个或多个代码组成的整体,代码块就是一种代码的分组机制,如果代码块执行,则代码块内的所有代码都执行,反之,则都不执行。
2.input()函数
input()函数可以接受一个输入数据,然后返回str类型。
3.if-else语句
if-else语句中,如果 if 的表达式的返回值为False,则会执行 else 的代码块,反之,则执行 if 的代码块。
语法:
if 表达式:
代码块1
else:
代码块2
4.if-elif-else语句
与if-else语句的用法相同,只是选择项从二选一变为了N选一。在if-elif-else语句中,会从上往下执行语句,如果有一个表达式的返回结果为True,则执行这个表达式下的代码块,并结束语句;如果表达式的返回结果都为False,则执行 else 的代码块。
语法:
if 表达式1:
代码块1
elif 表达式2:
代码块2
elif 表达式3:
代码块3
......
else
代码块n
注:if-elif-else语句只会有一个代码块执行
5.while
while语句是一种循环语句,是python中最简单的循环语句。能够重复执行代码块。
语法:
while 条件表达式:
代码块1
else:
代码块2
只有条件表达式的返回结果为True,才会执行 while 循环体内的代码块,直到条件表达式的返回结果为False或执行到 break 语句,才会跳出循环。else语句可有可无,else语句的代码块在循环结束后执行。
死循环:指表达式的返回值永远都是True的循环。
循环3要素:
- 初始化表达式: 在循环开始时,需要初始化一个变量
- 条件表达式:用来设置循环执行的条件
- 更新条件表达式: 每一次循环都会修改初始化变量的值