Python 分支结构

简介: 还有一些语句不仅仅由一行代码构成,例如分支和循环语句,在选择不同的分支或者 循环条件满足的情况下,有时需要执行多行代码。分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式,包括单分支结构和二分支结构。缩进指每一行代码开始前的空白区域,用来表示代码之间的包含和层次关系。相同层级的代码必须以垂直对齐的方式来组织, 即相同的缩进。输入冒号后回车,新的代码行将自动缩进,以便于输入代码块中的语句。子句会被执行,但有时候可能你希望,“许多”可能的子句中有一个被执行。时,跳过代码块,继续执行后续代码。
✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。
🍎个人主页: 小嗷犬的博客
🍊个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。
🥭本文内容:Python 分支结构

1.语句和代码块

程序是由语句和表达式构成的。

还有一些语句不仅仅由一行代码构成,例如分支和循环语句,在选择不同的分支或者 循环条件满足的情况下,有时需要执行多行代码。这样的语句称为复合语句

缩进的作用

在 Python 中, 要求使用缩进来标识代码块。 相同层级的代码必须以垂直对齐的方式来组织, 即相同的缩进。

一些代码行可以作为一组,放在“代码块”中可以根据代码行的缩进,知道代码块的开始和结束。代码块有3 条规则。

  1. 缩进增加时,代码块开始。
  2. 代码块可以包含其他代码块。
  3. 缩进减少为零,或减少为外面包围代码块的缩进,代码块就结束了。

Python语言采用严格的“缩进”来表明程序的格式框架。缩进指每一行代码开始前的空白区域,用来表示代码之间的包含和层次关系。

Python 对于缩进的数量没有严格规定,比较常见的是使用 4 个空格或者 1 个制表符。但最好不要在同一段代码中混合使用空格和制表符,这样可能会引起语法错误。

Python 的复合语句首行总是使用冒号:结尾。输入冒号后回车,新的代码行将自动缩进,以便于输入代码块中的语句。

首行语句: 
   内嵌代码块

2.条件表达式

控制语句的开始部分通常是“条件表达式”。分支语句通过条件表达式确定选择执行的代码块;循环语句通过条件表达式决定是否执行循环体中的代码块。通常来说,条件表达式的结果为一个布尔值,即 True或者 False,例如关系运算或者逻辑运算的表达式。控制语句根据条件是 True还是 False来决定做什么。

当表达式的最终值是下表中的某个值时,会被认作是假值:

对象类型 对象类型
布尔 False null类型 None
整型 0 浮点型 0.0
空字符串 '' 空列表 []
空元组 () 空字典 {}
空集合 set()
除了上表所列出来的值,其他的值都会被认作是真值。

3.分支结构

分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式,包括单分支结构和二分支结构。由二分支结构会组合形成多分支结构。

分支结构

3.1 单分支结构:if语句

单分支结构的条件为真值 True时,执行代码块,然后执行后续代码;而条件为假值 False时,跳过代码块,继续执行后续代码。

单分支结构的语法如下所示:

if condition:
    statements
代码实例:
age = input(请输入你的年龄:)
if age < 0:
    print('输入有误,请检查输入。')

3.2 else 语句

if子句后面有时候也可以跟着 else语句。只有 if语句的条件为 False时, else子句才会执行。在英语中, else语句读起来可能是:“如果条件为真,执行这段代码。否则,执行那段代码”。 else语句不包含条件,在代码中, else语句中包含下面部分:
if condition:
    statements1
else:
    statements2
代码实例:
ID = input(请输入身份证号码:)
if int(ID[-2]) % 2:
    print('男')
else:
    print('女')

3.3 多分支结构:elif子句

虽然只有 ifelse子句会被执行,但有时候可能你希望,“许多”可能的子句中有一个被执行。 elif语句是“否则如果”,总是跟在 if或另一条 elif语句后面。它提供了另一个条件,仅在前面的条件为 False时才检查该条件。在代码中, elif语句总是包含以下部分:
if condition1:
    statements1
elif condition2:
    statements2
else:
    statements3
代码实例:
ID = input(请输入身份证号码:)
if len(ID) != 18:
    print('身份证号错误。')
elif int(ID[-2]) % 2:
    print('男')
else:
    print('女')

3.4 三元表达式: if/else

Python中的三元表达式可以将 if-else语句放到一行里。语法如下:
True_expression if condition else False_expression
真值表达式或假值表达式可以是任何Python代码。它和下面的代码效果相同:
if condition:
    a = True_expression 
else:
    a = False_expression
代码实例:
ID = input('请输入身份证号码:')
gender = '男' if int(ID[-2]) % 2 else '女'
print(gender)

目录
相关文章
|
2月前
|
机器学习/深度学习 数据采集 算法
时间序列结构变化分析:Python实现时间序列变化点检测
在时间序列分析和预测中,准确检测结构变化至关重要。新出现的分布模式往往会导致历史数据失去代表性,进而影响基于这些数据训练的模型的有效性。
115 1
|
23天前
|
自然语言处理 Java 编译器
为什么要看 Python 源码?它的结构长什么样子?
为什么要看 Python 源码?它的结构长什么样子?
20 2
|
2月前
|
JSON API 数据格式
使用Python发送包含复杂JSON结构的POST请求
使用Python发送包含复杂JSON结构的POST请求
|
2月前
|
机器学习/深度学习 算法 数据挖掘
决策树算法大揭秘:Python让你秒懂分支逻辑,精准分类不再难
【9月更文挑战第12天】决策树算法作为机器学习领域的一颗明珠,凭借其直观易懂和强大的解释能力,在分类与回归任务中表现出色。相比传统统计方法,决策树通过简单的分支逻辑实现了数据的精准分类。本文将借助Python和scikit-learn库,以鸢尾花数据集为例,展示如何使用决策树进行分类,并探讨其优势与局限。通过构建一系列条件判断,决策树不仅模拟了人类决策过程,还确保了结果的可追溯性和可解释性。无论您是新手还是专家,都能轻松上手,享受机器学习的乐趣。
44 9
|
23天前
|
存储 自然语言处理 编译器
Python 源文件编译之后会得到什么,它的结构是怎样的?和字节码又有什么联系?
Python 源文件编译之后会得到什么,它的结构是怎样的?和字节码又有什么联系?
27 0
|
3月前
|
Python
Python 控制结构:开启震撼编程之旅,犹如舞台上的精彩戏剧,让你的代码活起来!
【8月更文挑战第22天】Python的控制结构是编程的核心,包括条件判断(if-elif-else)和循环(for、while)。例如,可以用if-elif-else判断学生成绩等级,for循环计算1至10的总和,while循环实现猜数字游戏。此外,列表推导式等高级特性让操作更简洁高效。掌握这些结构能显著提升编程效率和代码质量。
48 1
|
3月前
|
设计模式 开发者 索引
Python中的分支结构
Python中的分支结构
|
3月前
|
机器学习/深度学习 算法 数据挖掘
决策树算法大揭秘:Python让你秒懂分支逻辑,精准分类不再难
【8月更文挑战第2天】决策树算法以其直观性和解释性在机器学习领域中独具魅力,尤其擅长处理非线性关系。相较于复杂模型,决策树通过简单的分支逻辑实现数据分类,易于理解和应用。本示例通过Python的scikit-learn库演示了使用决策树对鸢尾花数据集进行分类的过程,并计算了预测准确性。虽然决策树优势明显,但也存在过拟合等问题。即便如此,无论是初学者还是专家都能借助决策树的力量提升数据分析能力。
42 4
|
3月前
|
JSON 数据处理 数据格式
Python中JSON结构数据的高效增删改操作
Python中JSON结构数据的高效增删改操作
|
4月前
|
存储 测试技术 数据库连接
Python代码结构
【7月更文挑战第16天】Python代码结构
48 2