Python 流程控制结构(1)

2024-01-03 18:25:50

# 在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次循环
'''

- break和continue可以与for和while循环搭配使用

在这里插入图片描述

文章来源:https://blog.csdn.net/weixin_43145997/article/details/135317990
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。