python中的流程控制与循环_python常见的流程控制结构有哪几种?
条件语句的构成由if、elif、else组成,根据其组成分支数量不同,分为单分支结构、二分支结构、和多分支结构
1.单分支结构
单分支结构由一个if语句组成,后面跟随条件表达式,如果条件成立则立即执行指定语句块,反之条件不成立则不执行任何语句块
# 条件成立的情况
>>> if 1==1:
>>> print('你真棒')
你真棒
# 条件不成立的情况
>>> if 5!=5:
>>> print('失败了')
注意事项:
- if语句后面必须跟条件表达式
- if条件表达式后面必须跟冒号(:),表示条件成立后执行程序的开始
- 条件成立时运行的语句必须缩进,一般为四个空格或一个tab
- 不受条件语句管理的语句,应和if语句保持同一缩进
>>> number = 5
>>> if number >= 3:
>>> print('这是受条件语句管理的')
>>> print('这是不受条件语句管理的')2
2.二分支结构
二分支结构由if...else...组成,if后面跟随条件表达式,条件后面加冒号;else后面没有条件,但必须加英文冒号。条件成立与不成立的的语句块均要缩进,如:
>>> age = 34
>>> if age > 0:
>>> print('age为正数')
>>> else:
>>> print('age为0或负数')
>>> print('程序执行完毕')
if语句后续条件成立,则执行if语句内缩进的内容;否则直接执行else语句内的缩进语句块
注意事项:
- else后面一定不要加条件、不要加条件、不要加条件!!!
- if和else缩进要保持一致,否则报错!
3.多分支结构
多分支结构格式由
if...elif...elif...else...组成,elif意思是否则如果,elif后续也需要加条件判断,每个条件下的语句块都必须缩进
>>> result = 100
>>> if result >=100:
>>> print('满分')
>>> elif result >=90:
>>> print('优秀')
>>> elif result >=60:
>>> print('良好')
>>> else:
>>> print('不及格')
在python中,循环分为两大类,分别是:条件循环(while循环)和遍历循环(for循环)
1.条件循环
while循环指某个条件成立,则循环体内的语句块会反复执行,直到条件不成立为止
>>> a = 1
>>> while a<5:
>>> print(a)
>>> a += 1
1
2
3
4
2.遍历循环
for循环是指将序列或其它可迭代对象中的每个元素单独提出来,执行语句块循环的过程。也可以使用range()函数实现次数循环
for循环一般格式如下:
for 变量 in 序列:
执行代码块(循环体)
如下图所示:
>>> for i in [1,2,3,4,5]:
>>> print(i)
1
2
3
4
5
3.break语句(循环跳出)
循环中,如果想要跳出循环,可以使用break语句,能够跳出当前的while循环或者for循环,break语句一般和条件语句结合使用
>>>for i in [1,2,3,4,5]:
>>> if i == 3:
>>> break
>>> print(i)
>>>print('循环结束')
1
2
循环结束
4.continue语句:停止当前循环,开启下次循环
continue语句和break语句不同,continue语句只能跳出一次循环然后返回循环起点,进入下次循环,continue语句同样和条件语句结合使用
如下图,求1-10直接的奇数:
>>> a = 0
>>> while a < 10:
>>> a+=1
>>> if a%2==0:
>>> continue
>>> print(a)
1
3
5
7
9
5.range()语句
range()语句是一种可迭代对象
range()的参数格式为:range(start,stop,step),分别代表(开始位置,结束位置,步长)参数包含开始位置但不包含结束位置
range中的参数必须是整数
range()一般和for循环结合起来使用,控制循环次数
>>> for i in range(1,10,2):
>>> print(i)
1
3
5
7
9
注意事项:
- 循环也可以嵌套,嵌套的循环作为一个整体参与循环,注意缩进关系
- 无限循环一般使用while循环,后面条件为True就能一直循环下去
- for循环是有限次数循环,所以for循环都可以改成while循环
- range()采取包头不包尾的原则,例如:range(100),不包含100,因此是0-99