Python学习之路 02 之分支结构

简介: 生活中的判断几乎是无所不在的,我们每天都在做各种各样的选择,如果这样就......或者那样就.......

1、介绍

1.1 条件判断

生活中的判断几乎是无所不在的,我们每天都在做各种各样的选择,如果这样就......

或者那样就.......

比如现在疫情期间,杭州这边地铁站,进入地铁首先要看健康吗,如果健康吗是绿色的,那就进入,如果是黄色或者红色马上隔离;绿色的还有下一层判断,那就是你的行程卡是否带 * 号。

以上就是现在在生活中看到的条件判断,那程序中的呢?

1.2 程序中的判断

程序中的判断就是 if 和 else 了,if 如果条件成立 程序就走if 里面的程序,否则 else 就走 else 里面的 程序。

image-20220905131128694

1.3 判断的定义

  • 如果条件满足,才能做某件事情,
  • 如果条件不满⾜,就做另外⼀件事情,或者什么也不做 。
正是因为有了判断,才使得程序世界丰富多彩,充满变化!

判断语句又被称为 “分⽀语句”,正是因为有了判断,才让程序有了很多的分⽀

2、if 单分支

2.1 比较运算符

image-20220905131530291

2.2 IF判断语句基本语法

在 Python 中,if 语句 就是⽤来进⾏判断的

格式如下:

if 要判断的条件: 
 
条件成⽴时,要做的事情 
 
…… 

注:

代码的缩进为⼀个 tab 键,或者 4 个空格 —— 建议使⽤空格

在 Python 开发中,Tab 和空格不要混⽤!

当 if 语句内容为空的时候,如果没有任何代码程序会报错,此时可以使用 pass 做为占位符 。

image-20220905132412849

2.3IF双分支

在使⽤ if 判断时,只能做到满⾜条件时要做的事情。那如果需要在不满⾜条件的时候,做某些事情,该如何做呢? 这就涉及到else了。

else 实现双分支 ,格式如下:

if 要判断的条件: 
 
条件成⽴时,要做的事情 
 
else: 
 
条件不成立时,要做的事情 

3、逻辑运算符

在程序开发中,通常在判断条件时,会需要同时判断多个条件 。

只有多个条件都满⾜,才能够执⾏后续代码,这个时候需要使⽤到逻辑运算符。

逻辑运算符可以把多个条件按照逻辑进行连接,变成更复杂的条件。

Python 中的逻辑运算符包括:and 与/or 或/not 非 三种 。

3.1 and 【与】

条件 1 and 条件 2

与就是必须多个条件同时满足,返回True,否则只要有其中一个条件不满足,那它就为False。

image-20220905132815420

3.2 or 【或】

条件1 or 条件 2

或就是多个条件中只要有一个满足,他就返回True ,除非两个条件都不满足,那就返回false。

3.3 not 【非】

not 条件

非就是反向操作,你要等等于什么条件才执行的程序加上了Not就变成了 不等等于什么条件才执行的语句。

4、if多分支

4.1 elif 语句

在开发中,使⽤ if 可以判断条件 ,使⽤ else 可以处理 条件不成立的情况 。

但是,如果希望再增加⼀些条件,条件不同,需要执⾏的代码也不同时, 就可以使⽤ elif

语法也非常简单,格式如下:

if 条件 1: 
 
条件 1 成⽴时,要做的事情 
 
elif 条件 2: 
 
条件 2 成立时,要做的事情 
 
elif 条件 3: 
 
条件 2 成立时,要做的事情 
 
else: 
 
所有条件不成立时,要做的事情 

注:

elif 和 else 都必须和 if 联合使⽤,⽽不能单独使⽤

可以将 if 、 elif 和 else 以及各⾃缩进的代码,看成一个完整的代码块

4.2 IF嵌套

elif 的应⽤场景是:同时判断多个条件,所有的条件是平级的 。

在开发中,使⽤ if 进⾏条件判断,如果希望在条件成⽴的执⾏语句中再增加条件判断,就可以使⽤ if 的嵌套。

if 的嵌套的应⽤场景就是:在之前条件满⾜的前提下,再增加额外的判断。

语法格式如下:

if 条件 1: 
 
    条件 1 满⾜执⾏的代码 
    ……
    if 条件 1 基础上的条件 2: 
        条件 2 满⾜时,执⾏的代码 
        …… 
    # 条件 2 不满⾜的处理 
    else:
        条件 2 不满足时, 执行的代码 
# 条件 1 不满⾜的处理 
 
else:
 
    条件 1 不满⾜时,执⾏的代码 
    …… 

image-20220905133600954

相关文章
|
1月前
|
PyTorch Linux 算法框架/工具
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
这篇文章是关于如何使用Anaconda进行Python环境管理,包括下载、安装、配置环境变量、创建多版本Python环境、安装PyTorch以及使用Jupyter Notebook的详细指南。
249 1
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
|
4天前
|
算法 定位技术 Python
震惊!Python 图结构竟然可以这样玩?DFS&BFS 遍历技巧大公开
在 Python 编程中,图是一种重要的数据结构,而深度优先搜索(DFS)和广度优先搜索(BFS)是遍历图的两种关键算法。本文将通过定义图的数据结构、实现 DFS 和 BFS 算法,并通过具体示例展示其应用,帮助读者深入理解这两种算法。DFS 适用于寻找路径和检查图连通性,而 BFS 适用于寻找最短路径。掌握这些技巧,可以更高效地解决与图相关的复杂问题。
15 2
|
10天前
|
Python
SciPy 教程 之 SciPy 图结构 7
《SciPy 教程 之 SciPy 图结构 7》介绍了 SciPy 中处理图结构的方法。图是由节点和边组成的集合,用于表示对象及其之间的关系。scipy.sparse.csgraph 模块提供了多种图处理功能,如 `breadth_first_order()` 方法可按广度优先顺序遍历图。示例代码展示了如何使用该方法从给定的邻接矩阵中获取广度优先遍历的顺序。
21 2
|
11天前
|
算法 Python
SciPy 教程 之 SciPy 图结构 5
SciPy 图结构教程,介绍图的基本概念和SciPy中处理图结构的模块scipy.sparse.csgraph。重点讲解贝尔曼-福特算法,用于求解任意两点间最短路径,支持有向图和负权边。通过示例演示如何使用bellman_ford()方法计算最短路径。
23 3
|
17天前
|
算法 测试技术 开发者
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗;代码审查通过检查源代码发现潜在问题,提高代码质量和团队协作效率。本文介绍了一些实用的技巧和工具,帮助开发者提升开发效率。
18 3
|
30天前
|
机器学习/深度学习 人工智能 架构师
Python学习圣经:从0到1,精通Python使用
尼恩架构团队的大模型《LLM大模型学习圣经》是一个系统化的学习系列,初步规划包括以下内容: 1. **《Python学习圣经:从0到1精通Python,打好AI基础》** 2. **《LLM大模型学习圣经:从0到1吃透Transformer技术底座》**
Python学习圣经:从0到1,精通Python使用
|
12天前
|
算法 索引 Python
SciPy 教程 之 SciPy 图结构 3
SciPy 图结构教程:介绍图的基本概念、节点和边的定义,以及如何使用 SciPy 的 `scipy.sparse.csgraph` 模块处理图结构。重点讲解 Dijkstra 最短路径算法及其在 SciPy 中的应用,包括 `dijkstra()` 方法的参数设置和使用示例。
11 0
|
12天前
|
Python
SciPy 教程 之 SciPy 图结构 2
《SciPy 教程 之 SciPy 图结构 2》介绍了图结构作为算法学中的重要框架,通过 `scipy.sparse.csgraph` 模块处理图结构。文章示例展示了如何使用 `connected_components()` 方法查找所有连接组件,通过创建稀疏矩阵并调用该方法实现。
8 0
|
1月前
|
机器学习/深度学习 缓存 PyTorch
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
这篇文章是关于如何下载、安装和配置Miniconda,以及如何使用Miniconda创建和管理Python环境的详细指南。
348 0
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
|
13天前
|
算法 Python
SciPy 教程 之 SciPy 图结构 1
SciPy 图结构教程介绍了图的基本概念及其在算法中的应用。图由节点和边组成,节点代表对象,边表示对象间的连接。SciPy 的 `scipy.sparse.csgraph` 模块提供了处理图结构的工具。邻接矩阵用于表示节点间的连接关系,分为有向图和无向图两种类型。无向图的边是双向的,而有向图的边则有明确的方向。
25 0