python基础语法:第三章 程序的控件结构

第一节 程序的三种控制结构

1.顺序结构

2.分支结构

3.循环结构

第二节 分支结构

一、单分析结构

语法:

if 条件:

    语句块

二、双分支结构

if 条件:

    语句块1

else:

    语句块2

三、多分支结构

语法:

if 条件1 :

    语句块1

elif 条件2:

    语句块2             

else:

    语句块N

四、if的嵌套和语法

语法:

if条件1∶

    条件1成立执行的代码

if 条件2:

    条件2成立执行的代码

说明:条件2的if也是出于条件1的缩进关系内部。

第三节 循环结构

Python语言的循环结构包括两种:无限循环和遍历循环。无限循环使用保留字while根据判断条件执行程序。遍历循环使用保留字for依次提取遍历结构中各元素进行处理。

一、无限循环

1.while

语法:

while 条件:

    循环体

示例:

i=0

while i <=6:

  print(f"第{i}次运行")

  i+=2

说明:

(1)循环体中的语句可以有一行,也可以有多行。

(2)使用条件i<=某个数字的时候,循环体中必须有计算器,比如示例中的i+=2就是一个计数器,使用计算器的作用:满足条件时退出循环,如果没有计数器会陷入死循环。

(3)并不是所有的while循环当要有计数器,但是这样的while循环有肯定会有一个退出循环的机制。比如下面的while循环。

print('程序应用提示:录入姓名信息,退出程序请录入“关闭”两字')

while True:

    a=input("请输入信息:")

    if a=="关闭":

        break

    else:

        print("学生姓名:{}".format(a))

2.while…else

语法:

while条件:

    条件成立重复执行的代码

else:
    
    循环正常结束之后要执行的代码

说明:

在这种扩展模式中,当while循环正常执行之后,程序会继续执行else语句中内容。else语句只在循环正常执行后才执行,因此,可以在“循环正常结束之后要执行的代码”中放置判断循环执行情况的语句。while循环的else语句与for循环的else语句一样,都是循环正常执行结束的“奖励”部分。

3.while循环之break

(1)break 用来退出while循环。

(2)break写在if语句中

(3)满足break条件时,循环体中break之前的代码会被执行,之后的代码不会被执行。示例:

i=0

while i <6:

    print('-'*5+"运行提示"+'-'*5)

    if i==3:

        print("故障")

        break

    print(f"第{i}次运行")

    i+=1

(4)带有break的while…else循环,当执行break时,循环就属于非正常结束,不会再执行else里的语句。

4.while循环之continue

(1)continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。

(2)continue应写在if语句中

(3)满足continue条件时,循环体中continue之前的代码会被执行,之后的代码不会被执行,这一点儿道理同break。

(4)如果计数器写在continue计数器后面,使用continue时,应在if语句中的continue关键字前(这个计数器可以加在if语句中,也可以加在if语句前),再加一次循计数器,否则程序一直循环运行,陷入死循环。原因在执行continue的if条件时,continue后面的计数器不会被执行,已经失效,计数器的值i一直不变,因此是一个死循环。示例如下:

i=0

while i <6:

    print('-'*5+"运行提示"+'-'*5)

    if i==3:

        print("故障")

        i+=1

        continue

    print(f"第{i}次运行")

    i+=1

二、遍历循环

遍历循环可以理解为从遍历结构中逐一提取元素,放在循环变量中,对于每个所提取的元素执行一次语句块。for语句的循环执行次数是根据遍历结构中元素个数确定的。

遍历结构可以是字符串、文件、range()函数或组合数据类型等。

1.for

语法:

for 临时变量 in 遍历结构:

    语句块

2.for…else

语法:

for 临时变量 in 遍历结构:

    语句块

else:

    循环正常结束执行的语句

说明:关于else的解释同while…else

3.for循环之break

同while循环之break

4.for循环之continue

同while循环之continue,只不过for循环之continue中不用再二次添加计数器。

三、循环嵌套

即在循环中再嵌套一次循环。道理同if嵌套。

第四节 程序的异常处理

一、语法

try:

    可能发生错误的代码

except:

    如果出现异常执行的代码

else:

    如果没有异常要执行的代码

finally:

    无论是否异常都要执行的代码,例如关闭文件。

二、捕获指定异常类型

1.当捕获单个异常时,可以把要捕获的异常类型的名字放到except后面。

try:

    print(num)

except NameError:

    print('有错误')

2.当捕获多个异常时,可以把要捕获的异常类型的名字,放到except后面,并使用元组的方式进行书写。

try:

    print(1/0)

except (NameError, ZeroDivisionError):

    print('有错误')

3. 当捕获所有异常时,可以把Exception放到except后面,这里的Exception表示所有异常名称的父类。

try:

    print(1/0)

except Exception:

    print('有错误')

三、捕获异常描述信息

语法:

except 异常名称 as 临时变量名称:

说明:as后面的变量也应该是临时变量或者称为局部变量,因为这个变量放在try语句后面就会失效报错。

示例:

try:

    print(num)

except (NameError, ZeroDivisionError) as result:

    print(result)

四、自定义异常

待复习完类与对象后,再整理。

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值