首页 > 编程语言 >Python分支结构与循环结构

Python分支结构与循环结构

时间:2024-04-05 22:11:34浏览次数:27  
标签:语句 遍历 Python else 循环 print 结构 分支

程序的基本结构共有三种,「任何程序都可以由这三种基本结构组合来实现」。

  • 顺序结构
  • 分支结构
  • 循环结构

一、分支结构

  分支结构是根据判断条件结果而选择不同向前路径的运行方式,分支结构分为:单分支,二分支和多分支。

 1)单分支结构

  单分支结构是分支结构中最简单的一种方式,它的使用方法如下:

if <条件>:
    <语句块>

    单分支结构只需要判断一个条件,根据这个条件是否成立来决定是否执行一段语句。

实例1:猜数字

num_in=eval(input("请输入数字:"))
if num_in==59:
    print("猜对了")

2)二分支

  二分支结构是根据条件判断的不同而选择不同执行路径的一种分支结构,它的使用方法如下:

if <条件>:
    <语句块1>
else:
    <语句块2> 

       二分支结构也只需要判断一个条件,根据这个条件来决定执行的语句块,成立执行语句块1,不成立执行语句块2。

实例2:猜数字

num_in=eval(input("请输入数字:"))
if num_in==59:
    print("猜对了")
else:
    print("猜错了")

3)多分支  

多分支结构是根据不同条件来选择语句块运行的一种分支结构,它的使用方法如下:

if <条件1>:
    <语句块1>
elif <条件2>:
    <语句块2>
......
else:
    <语句块n>

多分支结构需要判断多个条件,根据判断当前条件是否成立来决定是否执行当前语句块,当所有条件都不成立时,执行else的语句块。

实例3:猜数字

num_in=eval(input("请输入数字:"))
if num_in>59:
    print("数字大了")
elif num_in<59:
    print("数字小了")
else:
    print("数字正确")

(3)、异常处理  

 当使用以下实例时

num_in=eval(input("请输入数字:"))
print(num_in)

 如果不输入数字,而输入字符串,此时会出现如下报错: 

 此时就需要使用到Python通过的异常处理的相关机制,异常处理有两种非常基本的使用方法,使用保留字try和except,格式如下:

try:
    <语句块1>
except <异常类型>:
    <语句块2>

 

while True:
    try:
        score=int(input("请输入成绩"))
        break
    except ValueError:
        print("输入的数字有误")
    except Exception as e:
        # 处理未知错误,防止解释器抛出异常而被终止运行
        print(F"未知错误:{e}")

 放在try中的语句块1如果出现异常,将会在except中查找相同的异常类型,执行相应的语句块。如果except后面不跟随异常类型,那么就必须是最后一个except,表示除以上提到的异常类型,其余的异常都采用这个except的语句块。  

实例:  

try:
    num_in=eval(input("请输入数字:"))
    print(num_in)
except NameError:
    print("当前输入不是数字")

  异常处理的高级用法使用到了保留字try、except、else和finally,格式如下: 

try:
    <语句块1>
except <异常类型>:
    <语句块2>
else:
    <语句块3>
finally:
    <语句块4>

 多出来的else语句块在没有发生异常时执行,finally语句块一定执行。 

(4)、循环结构

  循环语句分为:遍历循环和无限循环

 1)遍历循环

  遍历循环指遍历某一个结构形成的循环运行方式,它的使用方法如下:

for <循环变量> in <遍历结构>:
    <语句块>

简单说遍历循环是由for in保留字构成的循环结构,它可以从遍历结构中逐一提取元素放到循环变量里。当遍历结构中的所有元素都放入循环变量,并且都已循环执行之后,那么循环程序退出。注意:遍历结构不是一种特殊的类型,它可以是range(m,n,k)、字符串、序列等等。

  当遍历结构采用range(m,n,k)时,可以称这种遍历循环结构为计数循环,通过range(m,n,k)产生一个数字序列,这个序列包含(n-m)/k个元素,每个元素都是整数。实例如下:

for count1 in range(5):
    print(count1,end=",")
print()
for count2 in range(1,6,2):  #从1开始到6之间的等差数列,差为2
    print(count2,end=",")

当遍历结构采用字符串时,可以称这种遍历循环结构为字符串遍历循环,循环变量将会遍历字符串的每一个字符。实例如下:

for str in "Hello,world":
    print(str,end=",")

 当遍历结构采用列表时,可以称这个遍历结构为列表遍历循环,循环变量将会遍历列表中的每一个元素。(其他序列也可作为遍历结构)实例如下:

for i in [123,"PY",567]:
    print(i,end=",")

当变量结构采用文件(标识符)时,可以称这个遍历结构为文件遍历循环,循环变量将会遍历文件的每一行。

一般只要是多个元素组成的数据类型,都可以被采用。

2)无限循环

无限循环是由条件控制的循环运行方式,它的使用方法如下:

while <条件判断>:
    <语句块>

简单来说,它已经不再是遍历某一个结构,而是根据条件判断来进行循环。如果这个条件成立,那么下面的语句块就会被执行,执行之后再次判断条件,如果这个条件再次成立,它就会继续再执行下面的语句块,然后再回来判断循环。所以无限循环是反复执行语句块,直到条件不满足时结束。 

实例:  

a=3
while a>0:
    a-=1
    print(a)
2
1
0
如果不小心写成了死循环,可以使用<Ctrl>+<C>退出循环。

3)循环控制保留字break和continue

  和其他语言一样,Python通过了两个循环控制保留字break和continue(几乎所有的语言都是这两个)。break表示结束当前所在循环,continue表示跳过当次循环并不影响循环的继续,它们都可以与for循环和while循环搭配使用。

  continue实例:

for i in "PYTHON":
    if i=='T':
        continue
    print(i,end=",")

 

break实例:

for i in "PYTHON":
    if i=='T':
        break
    print(i,end=",")

使用break时,注意其所在的循环位置,只跳出break所在的循环。

4)循环的高级用法 

循环可以和else搭配使用,else与循环处于同一级,在循环语句之后,使用方法如下:

for <循环变量> in <遍历结构>:
    <语句块1>
else:
    <语句块2>
 
while <条件>:
    <语句块1>
else:
    <语句块2>

无论是for还是while,当循环没有被break保留字退出时(允许存在break),此时执行else的语句块。简单来讲,else语句块可以作为“正常”完成循环的一种奖励,与异常处理中的else类似。  

实例1:  

for c in "PYTHON":
    if c=="T":
        continue
    print(c,end="")
else:
    print("正常退出")

实例2:  

for c in "PYTHON":
    if c=="T":
        break
    print(c,end="")
else:
    print("正常退出")

标签:语句,遍历,Python,else,循环,print,结构,分支
From: https://www.cnblogs.com/longlyseul/p/18116284

相关文章

  • Python 变量循环
    一、变量编程语言或脚本语言都涉及变量,在变量定义时都有一定的规则。Python变量定义规则如下:A.变量名:只能是"字母、数字和下划线"的任意组合。注:不能有空格和其他特殊字符B.变量名:不能以数字开头C.变量名:不能是关键字。如下:  and、as、assert、break、class、contin......
  • Python实战:天气应用
    1.引言天气应用是现代生活中不可或缺的一部分,它可以帮助我们实时获取天气信息,合理安排出行和活动。通过Python实现天气应用,我们可以加深对编程语言的理解,同时也能够体会到编程带来的便利。2.环境准备在开始编写天气应用之前,我们需要准备以下环境:1)Python环境:确保计......
  • Python实战:文章朗读器
    1.引言朗读器是一种可以帮助我们阅读文本的工具,特别适合那些需要长时间阅读或者视力不佳的用户。通过Python实现朗读器,我们可以加深对编程语言的理解,同时也能够体会到编程带来的便利。2.环境准备在开始编写朗读器之前,我们需要准备以下环境:1)Python环境:确保计算机上......
  • Python实战:键盘记录器
    1.引言键盘记录器是一种可以监控和记录用户键盘输入的工具,通常用于安全测试、数据分析等场景。通过Python实现键盘记录器,我们可以加深对编程语言的理解,同时也能够体会到编程带来的便利。2.环境准备在开始编写键盘记录器之前,我们需要准备以下环境:1)Python环境:确保计......
  • Python实战:将Pdf文件转换为有声读物
    1.引言有声读物是现代生活中不可或缺的一部分,它可以让我们在通勤、健身等场合享受阅读的乐趣。然而,将Pdf文件转换为有声读物需要一定的技术支持。通过Python实现Pdf文件转换为有声读物,我们可以加深对编程语言的理解,同时也能够体会到编程带来的便利。2.环境准备在......
  • python流程控制
    条件语句If语句If-else语句If-elif-else语句If嵌套循环语句While语句for语句 while循环嵌套for循环嵌套......
  • 数据结构:二叉搜索树、平衡二叉树(AVL树)、红黑树、B树、B+树
    个人理解浅谈数据结构,应对八股文面试目录前言一、二叉搜索树(二叉排序树、二叉查找树、AVL树)(1)二叉树的特点:(2)二叉树的优缺点二、平衡二叉树(高度平衡树,最早的自平衡二叉树)(1)平衡二叉树的特点:(2)平衡二叉树的优缺点三、红黑树(1)红黑树的特点(2)红黑树的优缺点四、红黑树......
  • IO流的体系结构
    IO流最全面,简洁的速记版本,面试八股文必备目录前言一、IO流的分类二、IO流的基本结构1.结构如下:三.字节输出流FileOutputStream:(1)构造方法:(2)write四.字节输入流FileInputStream:(1)构造方法:(2)read五、字符流特点:六、字符输入流FileReader:(1)构造方法:(2)read七、字......
  • 疯狂Python讲义学习笔记——第2章变量和简单类型2.4字符串入门
    思维导图          字符串的意思是“一串字符”,比如"Hello,Python"是一个字符串,"Howdoyoudo?"也是一个字符串。Python要求字符串必须使用引号括起来,可使用单引号或双引号,只要两边的引号能配对即可。4.1字符串和转义字符        字符串的内容几乎可......
  • LeetCode in Python 300. Longest Increasing Subsequence (最长递增子序列)
    求最长递增子序列是深度优先搜索(DFS)的一种应用,有两种比较好的方法可以解决。第一种是动态规划法,时间复杂度为O(n*n),即设置边界条件和更新迭代公式求解最优解。第二种使用二分查找将时间复杂度降为O(nlogn)。本文给出两种方法的实现代码及说明。示例:图1最长递增子序列输入......