day 3 分支结构和循环
if-elif-else
循环结构:for循环(range)、while循环、continue、break、
if-elif-else(链式条件)
当我们面对的可能性不只两种,需要更多的分支,就用到了链式条件,elif(else if的缩写),elif分支是无限制的,如果有else语句,必须放在条件链的末尾,else不是必须的。
- 当后面的条件是在前面条件不成立的情况下进行。如果有一个以上的条件为真,只有先出现的为真的条件所对应的分支语句会运行。
if嵌套与三目运算符
if嵌套(如果一个条件判断嵌套在另一个条件判断语句中)
语法:
if 条件语句:
if 条件语句:
代码段
else:
代码段
else:
代码段
三目运算符
-
表达式2 if 表达式1 else 表达式3
1)C的三目运算符
表达式1 ? 表达式2 :表达式3 - 判断表达式1是否为真,如果是,运算结果就是表达式2,否则就是表达式3
?: a>b ? a:b
2)python的三目运算符
表达式2 if 表达式1 else 表达式3 - 判断表达式1是否为真,如果是,运算结果就是表达式2,否则就是表达式3
循环条件
1.for循环
语法:
for 变量 in 序列:
循环体
说明:
1)for - 关键字:固定写法
2)变量 - 和定义变量的时候变量名的要求是一样的;(如果这个变量名在这个环境中不使用,变量名可以用_代替)
3)in - 关键字;固定写法
4)序列 - python中容器型数据类型,例如:字符串、列表、元组、集合、字典、迭代器、生成器、range等
5): - 固定写法
6)循环体 - 和for保持一个缩进的一条或多条语句;需要重复执行的代码
执行过程:让变量去序列中取值,一个一个的取,取完为止,每取一个就执行一次循环体。
for循环的执行次数,看序列中元素的个数
2.range函数 - 产生指定范围的数字序列
range(N) 产生一个[0,N)的数字序列(N是正整数);
range(N,M)产生一个[N,M-1)的数字序列
range(N,M,sep)sep为步长
while循环
语法
while 条件语句:
循环体
1)while -关键字:固定写法
2)条件语句:任何有结果的表达 式
2.1):-固定写法
3)循环体 -while一个缩进的一个或多个语句,重复执行的语句
# 练习:写程序让客户不断输入内容,直到输入的内容是0为止。
msg ='start'
while msg!='0':
msg=input('请输入:')
print('结束')