python基础(8)— 流程控制

一、顺序结构

程序设计中有 3 种基础结构,分别是顺序结构、分支结构和循环结构。

顺序结构就是按照自上而下的执行顺序,依次执行每一条代码。

二、分支结构

1、if 语句

语法格式:

if 表达式:
    代码块

说明:

  1. if 语句的执行逻辑,满足条件则执行if语句的代码块,不满足条件则不执行if代码块。
  2. 表达式不管是什么,最终的结果都是“真”或者“假”。

实例:

# 条件为“真”
con = True

if con:
    print("条件为真,执行if语句")

---------------------------------------------------------
运行结果:
条件为真,执行if语句
# 条件为“假”
con = False

if con:
    print("条件为真,执行if语句")

print("条件为假,不执行if语句")

------------------------------------------------------
运行结果:
条件为假,不执行if语句

2、if...else... 语句

语法格式:

if 表达式:
    代码块1
else:
    代码块2

说明:

  • 表达式为“真”,执行代码块1。表达式为“假”,执行代码块2。

实例:

# 表达式为“真”
con = True

if con:
    print("条件为真,执行if语句")
else:
    print("条件为假,执行else语句")

------------------------------------------------
运行结果:
条件为真,执行if语句
# 表达式为“假”
con = False

if con:
    print("条件为真,执行if语句")
else:
    print("条件为假,执行else语句")

-------------------------------------------------------
运行结果:
条件为假,执行else语句

3、if...elif...else... 语句

语法格式:

if 表达式1:
    代码块1

elif 表达式2:
    代码块2

//多个elif语句

else:
    代码块n

说明:

  • Python 会从上到下逐个判断表达式是否成立,一旦遇到某个成立的表达式,就执行后面紧跟的语句块;此时,剩下的代码就不再执行了,不管后面的表达式是否成立。
  • 如果所有的表达式都不成立,就执行 else 后面的代码块。

实例:

# 条件1为“真”
con1 = True
con2 = True

if con1:
    print("条件1为真")

elif con2:
    print("条件1为假,条件2为真")

else:
    print("所有条件都为假")

------------------------------------------------------------
运行结果:
条件1为真
# 条件1为“假”,条件2为“真”
con1 = False
con2 = True

if con1:
    print("条件1为真")

elif con2:
    print("条件1为假,条件2为真")

else:
    print("所有条件都为假")

----------------------------------------------------------
运行结果:
条件1为假,条件2为真
# 所以条件都为“假”
con1 = False
con2 = False

if con1:
    print("条件1为真")

elif con2:
    print("条件1为假,条件2为真")

else:
    print("所有条件都为假")

-------------------------------------------------------------------
运行结果:
所有条件都为假

三、循环结构

循环结构三要素:变量,循环终止条件,循环体

1、for 循环

功能:遍历可迭代对象

语法格式:

for 变量 in 可迭代对象:

    代码块

说明:

  • 可迭代对象包括字符串、列表、元组、字典、集合等序列类型

实例:

# 计算 0 到 9 的累加值
result = 0

for num in range(10):
    result +=num
    # result = result + num

print(result)

--------------------------------------------------------
运行结果:
45

说明:

  • range() 是 python 内置函数,返回一个可迭代对象

2、while 循环

语法格式:

while 表达式:
    代码块

说明:

  • 表达式为的值为“真”,执行代码块。
  • 表达式的值为“假”,跳出循环体。
  • 如果表达式一直为“真”,则会产生死循。

实例:

# while 循环,计算 0 到 9 的累加值
result = 0
num = 1

while num < 10:
    result +=num
    num += 1

print(result)

-----------------------------------------------------------
运行结果:
45

四、关键字

1、pass

pass关键字,表示空语句,用来让解释器跳过此处,什么都不做。

2、break

break 关键字,用来跳出当前循环体,对应 for 循环和 while 循环都适用。

实例:

# break 跳出当前循环体
for i in range(5):

    if i == 3:
        print("遇到3跳出当前循环体")
        break

    print(i)

---------------------------------------------------------------
运行结果:
0
1
2
遇到3跳出当前循环体

说明:

  • 对于嵌套的循环结构来说,break 语句只会终止所在循环体的执行,而不会作用于外层循环体。

3、continue

continue关键字 ,可以跳出当次循环,执行下一次循环。

实例:

# continue 跳过此次循环
for i in range(5):

    if i == 3:
        print("跳过数字3")
        continue

    print(i)

-----------------------------------------------------
运行结果:
0
1
2
跳过数字3
4

五、嵌套循环

if ,else,for ,while语句之间相互嵌套,循环嵌套结构的代码,Python 解释器执行的流程为:

  • 当外层循环条件为 True 时,则执行外层循环结构中的循环体;
  • 外层循环体中包含了普通程序和内循环,当内层循环的循环条件为 True 时会执行此循环中的循环体,直到内层循环条件为 False,跳出内循环;
  • 如果此时外层循环的条件仍为 True,则返回第 2 步,继续执行外层循环体,直到外层循环的循环条件为 False;
  • 当内层循环的循环条件为 False,且外层循环的循环条件也为 False,则整个嵌套循环才算执行完毕。

1、使用for...for...嵌套循环打印9*9乘法表

for i in range(1,10):   # 第几行

    for j in range(1,i+1):  # 第几列
        print('{}*{}={}\t'.format(j,i,j*i),end='')  # 注意这里是 列*行

    print() # 实现分行输出,不能少

-------------------------------------------------------------------------------------
运行结果:
1*1=1	
1*2=2	2*2=4	
1*3=3	2*3=6	3*3=9	
1*4=4	2*4=8	3*4=12	4*4=16	
1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	

2、使用while...for...嵌套循环打印9*9乘法表

i = 1
while i < 10 :

    for j in range(1, i+1) :
        print('{}*{}={}\t'.format(j, i, i*j), end='')

    print()
    i +=1

------------------------------------------------------------------------
运行结果:
1*1=1	
1*2=2	2*2=4	
1*3=3	2*3=6	3*3=9	
1*4=4	2*4=8	3*4=12	4*4=16	
1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	

说明:

  • '{}'.format(args) 格式化字符串操作
  • \t 制表符


reference:

8. 复合语句 — Python 3.8.16 文档

4. 其他流程控制工具 — Python 3.8.16 文档

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值