Day3-分支和循环
if多分支结构
1.if - elif - else
应用场景:针对不同的条件实现不同的操作。(不同的条件之间满足:如果其中一个条件已经满足,就没有再判断其他条件的必须)
语法:
if 条件语句1:
代码段1
elif 条件语句2:
代码段2
elif 条件语句3:
代码段3
…
else:
代码段N
注意: 后面的条件是在前面的条件不成立的前提下进行判断的
if嵌套和三目运算符
1.if嵌套
在if语句中有其他的if语句
if 条件语句:
if 条件语句:
代码段
else:
代码段
else:
代码段
2.三目运算符
1)C的三目运算符
表达式1?表达式2:表达式3 - 判断表达式1的值是否是真,如果是整个运算的结果是表达式2,否则整个运算结果是表达式3
2)Python的三目运算符
表达式2 if 表达式1 else 表达式3 - 判断表达式1的值是否为True,如果是整个运算的结果是表达式2,否则整个运算结果是表达式3
for循环
1.for循环
语法:
for 变量 in 序列:
循环体
说明:
1)for - 关键字;固体写法
2)变量 - 和定变量的时候变量名的要求和规范一样;(如果这个变量在循环体中不使用,变量名可以用_代替)
3)in - 关键字;固体写法
4)序列 - Python中容器型数据类型,例如:字符串、列表、元组、集合、字典、迭代器、生成器、range等…
- : - 固体写法
6)循环体 - 和for保持一个缩进的一条或者多条语句;需要重复执行的代码
执行过程:
让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体。(for循环的执行次数,看序列中元素的个数)
2.range函数
range(N) - 产生一个[0, N) 的数字序列(N是正整数);例如:range(4) - 产生 0、1、2、3 的数字序列
range(M, N) - 产生一个[M, N) 的数字序列(M<N,并且M和N是整数);例如:range(-3, 3) - 产生: -3、-2、-1、0、1、2
range(M, N, step) - 产生一个[M, N)的数字序列,每次数值增加step;例如:range(-3, 3, 2) - 产生:-3、-1、1
while循环
1.while循环
语法:
while 条件语句:
循环体
说明:
1)while - 关键字;固定写法
2)条件语句 - 任何有结果的表达式都可以(赋值语句不行)
3): - 固定写法
4)循环体 - 和while保持一个缩进的一条或者多条语句;需要重复执行的代码
执行过程:
先判断条件语句是否为True, 如果是就执行循环体,执行完再判断条件语句是否为True;
为True又执行循环体,执行完再判断条件语句是否为True …
以此类推, 如果条件语句的结果是False循环就结束
2.for循环和while循环的选择
如果循环次数确定的就使用for循环;如果循环次数不确定就使用while循环