6.流程控制
6.1顺序结构
- (默认结构)代码从上往下一条一条的执行,每一条只执行一次
6.2分支结构
-
if分支结构
-
语法:
if 条件语句: 代码段
-
说明:
- if - 关键字,固定写法
- 条件语句 - 可以是任何有结果的表达式,例如:数据、已经赋值过的变量、运算表达式、函数调用表达式等(赋值语句不可以)
- : - 固定写法
- 代码段 - 和if保持一个缩进的一条或者多条语句(至少一条),就是在满足条件的时候才会执行的代码
-
执行过程:
- if xxxx(条件语句)就xxxx(代码段)
- 先判断条件语句是否为True,(如果条件语句的结果不是布尔值就先转换成布尔值再看),如果为True就执行代码段,否则代码就不执行
-
-
双分支结构
-
语法:
if 条件语句: 代码段1(满足条件要执行的代码) else: 代码段2(不满足条件的时候要执行的代码)
-
执行过程:
- 如果xxx就xxx否则就xxx
例如:
num = 23 if num % 2 == 0: print('偶数') else: print('奇数')
-
-
多分支结构
-
方案一:(只能解决多个条件之间存在:如果其中一个条件成立,那么其他条件绝对不会成立的关系)
if 条件语句1: 代码段1 elif 条件语句2: 代码段2 elif 条件语句3: 代码段3 .... else: 代码段N
-
方案二:(多个条件之间不存在说其中一个满足,另外的条件绝对不满足的情况)
if 条件语句1: 代码段1 if 条件语句2: 代码段2 ....
-
6.3循环结构
-
for循环
-
语法:
for 变量 in 序列: 循环体
-
说明:
- for - 关键字,固定写法
- 变量 - 变量名,和定义变量的时候的变量名要求相同
- in - 关键字,固定写法
- 序列 - 任何容器型数据类型,比如:字符串、列表、元组、字典、集合、迭代器、生成器、range等
- : - 固定写法
- 循环体 - 和for保持一个缩进的一条或者多条语句(至少一条)
-
执行过程:
- 让变量去序列中取值,一个一个的取,取完为止,每取一个就执行一次循环体
- for循环循环次数和序列中元素的个数有关
-
range函数 - 产生一个指定范围的数值序列
- range(N) - 产生0到N-1的数字序列
- range(M, N) - 产生M到N-1的数字序列
- range(M, N,step) - 产生M到N-1的数字序列,步长为step(每次增加step)
-
应用一:求和
-
1 + 2 + 3 + … + 100
sum1 = 0 for i in range(1, 101): sum1 += i print(sum1)
-
-
应用二:统计个数
-
统计20 ~ 100之间的偶数个数
count = 0 for i in range(20, 101, 2): count += 1 print(count)
-
-