• 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。

条件or可以走索引吗_代码块

1.2 运算符的优先级

andor 的优先级高。
通过语句m = 2 or 3 and 4可以判断andor的优先级。

  • 如果or比and的优先级高,则会先执行2 or 3,得出2后再执行2 and 4,得出结果m = 4
  • 如果orand优先级一样高,则按照从左到右依次执行语句的原则,先执行or,再执行and,得出结果m = 4
  • 如果orand优先级低,则先执行and,再执行or,得出结果m = 2
  • 条件or可以走索引吗_条件or可以走索引吗_02

  • 以下为所有运算符优先级排列(优先级由上往下越高):
  • 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,则执行冒号后的代码块,反之,则不执行。

什么是代码块?

代码块就是指一个或多个代码组成的整体,代码块就是一种代码的分组机制,如果代码块执行,则代码块内的所有代码都执行,反之,则都不执行。

条件or可以走索引吗_条件or可以走索引吗_03


条件or可以走索引吗_代码块_04


2.input()函数

input()函数可以接受一个输入数据,然后返回str类型。

条件or可以走索引吗_优先级_05


3.if-else语句

if-else语句中,如果 if 的表达式的返回值为False,则会执行 else 的代码块,反之,则执行 if 的代码块。

语法:

if 表达式:
	代码块1
else:
	代码块2

条件or可以走索引吗_优先级_06


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要素:

  • 初始化表达式: 在循环开始时,需要初始化一个变量
  • 条件表达式:用来设置循环执行的条件
  • 更新条件表达式: 每一次循环都会修改初始化变量的值