# 在Python主要分为3大流程结构:顺序结构、分支结构、循环结构
Python顺序结构:从头到尾依次执行每一条 , 不需要判断
Python分支结构:程序会拐弯,有选择性的执行代码 ,到某个节点后,会根据一次判断结果来决定之后走哪一个分支
Python循环结构:程序会杀回马枪,不断地重复执行同一段代码 , 循环结构有一个循环体,循环体是一段代码。对于循环结构来说,关键在于根据判断的结果,来决定循环体执行多少次。
控制语句 ,
1:break 跳出并结束当前整个循环,执行循环后的语句
就好比在操场上跑步,原计划跑 10 圈,可是当跑到第 2 圈的时候,突然想起有急事要办,于是果断停止跑步并离开操场,这就相当于使用了
break 语句提前终止了循环。2: continue 结束当次循环,继续执行后续次数循环
仍然以在操作跑步为例,原计划跑 10 圈,但当跑到 2
圈半的时候突然接到一个电话,此时停止了跑步,当挂断电话后,并没有继续跑剩下的半圈,而是直接从第 3 圈开始跑。
顺序结构: 没有判断
分支结构:布尔表达式的真值,用关键字if。else,elif来实现
单分结构:if 布尔表达式:当布尔表达式为真的时候执行
age=90
if age>30 :
print('nianjdale') #if为真,返回结果true,不影响后面的语句执行
print('niaj1')
if age>130 :
print('nianjdale') #if为假,不返回结果
print('niaj2')
二分支 if :else : 当表达式为真的时候执行if语句后面的语句,否则执行else后面的语句
可以组合结构
方式1:松散结构
meagge='学习了'
money=100
if meagge=='学习了':
if money>50:
print('hjaole')
print('可以吃饭了')
else:
print('buneng chif ')
方式2:紧凑方式 表达式1> if <条件> else <表达式2>
如果条件为真,则会返回表达式1的值,如果条件为假,则会返回表达式2的值。
mes='已经学习'
result='可以吃饭了' if mes=='已经学习le' else 'buOK'
print(result)
多分结构:if 布尔表达式:elif 布尔表达式:else: 当if语句和elif语句后面的布尔表达式为真的时候就执行与之对应的语句,否则执行else后面的语句
注意多条件之间的包含关系 注意变量取值范围的覆盖
score=90
if score>100:
print('OK')
elif 80<score>99:
print('BU ok')
elif score==90:
print('A')
else:
print('B')
循环结构 用 while while else循环语句 for for…else…
循环结构必须有判断条件的修改,以达到跳出循环,避免死循环也是需要注意的
符合判断条件,循环主体语句,修改循环语句,继续判断,不符合判断,直接输出结果
sum=0
num=1
while num<100: #循环结束判断
sum+=num; #循环体
num+=1 #修改循环条件
print('a到100所有数字的和为:%d'%(sum))
符合判断条件,循环主体语句,修改循环语句,继续判断,不符合判断,则执行else语句
num=1
while num<100: #循环结束判断
sum+=num; #循环体
num+=1 #修改循环条件
else: #独立的语句块。循环结束后的语句
print('a到100所有数字的和为:%d'%(sum))
for 循环变量 in 遍历结构(计数循环 字符串遍历循环 列表循环 文件循环)
用来进行元素遍历的,即for循环的结束条件就是可迭代对象的所有元素都遍历完毕,for循环的循环次数也是由可迭代对象的元素个数决定的,in表达从(字符串、序列等)中依次取值,又称为遍历
语法结构: 从遍历结构中逐一提取元素,放在循环变量中
for <循环变量> in <遍历结构> :
<语句块>
nums=[1,2,6,7]
for i in nums:
print(i)
For循环语句是按照元素的下标进行取数,并不会因为在循环过程中添加元素或者删除元素而所影响,同时由于对列表进行增删元素之后,其他元素会进行移动(即其他元素的下标会发生变化)
data = [1,1,1,2,1,2,1,1]
for num in data:
if num ==1:
data.remove(num)
print(data)
for k in range(10):
print(k)
for…else…else…语句与循环结构 循环遍历输出,不影响后面的else 语句执行
for k in range(10):
print(k)
else:
print('PASS')
for c in "python": #循环语句部分
print(c)
else: #循环语句结束后的语句
print('FALSE')
值得注意的是,如果在循环中,不进行循环满足的条件就可能会出现死循环,一直循环下去,所以需要循环跳转关键字语句进行满足条件的跳转,避免死循环出现问题
- break跳出并结束当前整个循环,执行循环后的语句
break 语句可以跳出 for 和 while 的循环体 如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不行。
- break仅跳出当前最内层循环
for i in range(1, 11):
if i == 5:
print("满足条件中途退出语句执行,也不会继续执行下面的语句,满足条件是:"+str(i))
break #如果不用这个,满足条件后,还是会继续执行下面的语句else
else:
print("循环正常结束")
n = 0
while n<10:
n+=1
if n == 5:
# print("满足条件中途退出语句执行,也不会继续执行下面的语句,满足条件是:"+str(n))
break #没有遇到break时执行else
else:
print("循环结束了")
#代码效果:无任何输出
- continue结束当次循环,继续执行后续次数循环
continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环
for item in range(1,31):
if item%5:
continue #满足条件结束当次循环,继续执行后续次数循环 ,Else 依然继续执行
else:
print("FALSE A")
for 中使用 continue
for i in 'Python':
if i == 'h':
continue # 满足条件,结束当次循环,继续执行后续语句,如果不用的话
print(i)
不进行第三次输出
i = 0
while i < 5:
i = i + 1
if i == 3:
print(i)
# continue #如果不加的话,满足条件还是会继续执行循环,继续输出
print(f'第{i}次循环')
'''
第1次循环
第2次循环
第4次循环
第5次循环
'''