2.9 Python 流程控制

news2024/10/7 13:16:19

文章目录

      • 1. 流程控制
      • 2. 顺序结构
      • 3. 伪代码
      • 4. 流程图
        • 4.1 顺序结构
        • 4.2 分支结构
        • 4.3 多分支结构
        • 4.4 循环结构

image-20221121213320066

1. 流程控制

流程控制: 控制程序按照一定的结构进行执行.
流程控制指的是代码的运行逻辑, 分支走向, 循环控制, 能真正体现程序执行顺序的操作.

* 1966年计算机科学家 C.Bohm  G.Jacopini 在数学上证明, 只需要三种控制结构就能写出所有程序.

流程控制三大结构:
* 1.顺序结构
	执行顺序从上而下依次运行(程序最基本的结构).
* 2.分支结构
	在运行过程中根据不同的条件执行不同的流程.
* 3.循环结构
	在运行过程中只要条件满足就会反复的执行某个子代码块.

2. 顺序结构

Python 代码从上往下逐行按顺序执行的, 执行过程中遵循下面的基本原则:
* 1. 普通语句, 直接执行.
* 2. if, while, for, 流程控制, 按相应控制流程执行代码块.
* 3. 碰到@装饰器, break, continue等, 按规定语法执行.
* 4. 碰到函数, 将函数体载入内存, 并不直接执行.
* 5. 碰到类, 执行类内部的普通语句, 但是类的方法只载入, 不执行.
* 6. 碰到函数调用, 方法调用等, 执行函数体代码, 执行完毕后返回原来位置往后执行.

3. 伪代码

伪代码(Pseudocode) 是一种算法描述语言.
在设计一个程序的时候, 先使用中文将程序先写出来, 
伪代码没有任何的书写规则, 只要逻辑清楚正确即可,
最后将中文使用 Python 语言描述, 实现功能.
# 伪代码
# 1. 输入信息
# 2. 打印信息
# 伪代码
# 1. 输入信息
s1 = input('输入信息>>>:')
# 2. 打印信息
print(s1)

2022-11-21_01595

4. 流程图

程序流程图和伪代码在本质上其实是一样的,
只不过一个用文字表达一个用图片表达, 图片画着费点事, 但看着直观, 文字书写方便, 但不够直观.
可以使用 ProcessOn, 亿图, PPT, 等画图工具绘制流程图.

image-20221121184249370

4.1 顺序结构

按从上往下依次执行的结构, 几乎所有的程序都存在顺序结构.
第一步做什么, 二步做什么..., 依次执行.

image-20221121184748345

4.2 分支结构

在运行过程中根据不同的条件执行不同的流程.
条件满足执行什么, 条件不满足执行什么, 二选一.

image-20221121191024893

4.3 多分支结构

在运行过程中根据不同的条件执行不同的流程.
多个条件依次判断, 条件满足则执, 成功匹配一次就不会往后判断了, 多选一.

image-20221121235237565

4.4 循环结构

在运行过程中只要条件满足就会反复的执行某个子代码块.	
先判断条件是否满足, 满足则会执行子代码块, 
执行完毕再次对入口条件进行判断, 如此循环, 直到不满足条件, 完后执行.

image-20221121200605025


文章的段落全是代码块包裹的, 留言0是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言1是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言2是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言3是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言4是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言5是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言6是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言7是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言8是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言9是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言10是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言11是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言12是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言13是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言14是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言15是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言16是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言17是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言18是为了避免文章提示质量低.
文章的段落全是代码块包裹的, 留言19是为了避免文章提示质量低.


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/25227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pikachu---暴力破解(burpsuite)

没有设置认证策略的情况下,口令猜测就是尝试,永无尽头的尝试 符号的排列组合试到最后,总能得出最终结果,人类大脑和生理的限制,需要使用工具来尝试。 前言 浅学,借鉴,暂无代码分析。 基于表…

中职生学习动机的激发与培养研究-以汽车运用与维修专业为例

目 录 摘 要 I Abstract II 一、绪论 1 (一)选题背景及意义 1 (二)国内外研究现状 1 1.国外发展现状及趋势 1 2.国内发展现状及趋势 3 (三)研究思路及方法 3 二、学习动机的含义及基本类型 5 (一…

python之requests的高级用法

上一篇我们说了requests的简单用法,知道了如何发送请求,今天我们更深层次的来学习requests。我们看看高级一点的操作,比如讲文件上传,cookies设置,代理设置之类的。 1.文件上传 我们知道requests可以模拟提交一些数据…

UE5笔记【七】Nanite虚化几何-虚化几何简介;创建Nanite对象。

简书上有一篇文章:《【UE5】Nanite解析》 Epic外放的两大特性Nanite跟Lumen,构成了UE版本升级的基石,关于这两大技术,已经有了众多的分享,不过这些分享在结构和内容上难以构成整个方案的全貌,因此尝试先通…

Zero Time Waste: Recycling Predictions in Early Exit Neural Networks 论文阅读笔记

这是NIPS2021的一篇论文。论文的主题是解决early exit失败的时候IC的运算被浪费掉的问题。 背景介绍 early exit 是一个提高推理速度的研究方向。主要做法就是在网络的浅层特征上插入一些分支的分类器(Internal Classifier)。当以某个简单样本为输入的时…

SpringBoot项目实现发布订阅模式

文章目录自己实现观察者模式观察者被观察者测试利用Spring精简观察者实现类:定义成Bean被观察者:自动注入BeanSpring Event实现发布/订阅模式自定义事件事件监听者实现ApplicationListener接口使用EventListener注解异步和自定义线程池异步执行自定义线程…

SSM框架-Spring(二)

目录 1 手写spring框架 2 Spring IoC注解式开发 2.1 回顾注解 2.2 声明Bean的注解 2.3 Spring注解的使用 2.4 选择性实例化Bean 2.5 负责注入的注解 2.5.1 Value 2.5.2 Autowired与Qualifier 2.5.3 Resource 2.6 全注解式开发 3 JdbcTemplate 3.1 环境准备 3.2 新…

深化服务成工业品电商角逐新焦点

配图来自Canva可画 随着产业互联网的持续深入,TO B赛道就变得愈发火热起来,除了时下比较兴盛的各类SaaS应用之外,工业品电商赛道也再次汇集了外界的众多关注。据日前发布的《中国工业品数字化发展白皮书2022》显示,2022年上半年工…

应急响应-日志分析

Windows日志分析 日志概述在Windows系统中,日志文件包括:系统日志、安全性日志、应用程序日志: 在Windows Vista/windwos 7/windows 8/windows 10/windows server 2008及以上版本中: 系统日志的存放位置:%SystemRoot%\System32\…

【多线程 (一)】实现多线程的三种方式、线程休眠、线程优先级、守护线程

文章目录多线程1.1简单了解多线程1.2并发和并行1.3进程和线程1.4实现多线程方式一:继承 Thread类1.5实现多线程的方式二:实现 Runnable接口1.6实现多线程方式三:实现Callable接口1.7三种实现方式的对比1.8设置和获取线程名称1.9线程休眠1.10线…

电商网站运营的 7 大关键指标

本文介绍电商网站用户运营转化的相关指标体系,通过对这些指标的统计、监测和分析,可以及时发现电商运营的问题,以便有效及时改进和优化,提升电商转化率和销售额。 其中,不同类别指标对应电商运营的不同环节&#xff0…

02 使用jenkins实现K8s持续集成

1.项目架构的代码仓库使用gitlab托管 架构描述我不打算用过多文字描述了,来我们一起直接看图吧....二.将测试代码上传到gitlab 1.注册gitlab账户 此处使用本地搭建仓库2.创建仓库名称为"idiaoyan" 如下图所示,安装图解方式创建相应的用户即…

基于Multisim的LC正弦波振荡器的设计与仿真

目 录 1、绪论 1 1.1选题背景及意义 1 1.2国内外研究现状 1 1.3研究主要内容 2 2、系统整体设计 3 2.1开发环境Multisim的介绍 3 2.2方案比较与论证 4 2.2.1振荡电路方案选择 4 2.2.2 控制电路设计方案 4 2.3系统整体设计 5 3、工作原理、硬件电路的设计和参数的计算 6 3.1 反馈…

2022中科院分区表即将公布,今年迎来较大变化

再有一段时间,备受科研人员关注的中科院分区表就要公布了。 据中科院文献情报中心分区表小编今天留言透露,今年的分区表预计11月底或12月初上线。 不少科研人已经开始期待了 。和往年相比,今年的分区表将会有较大变化。 只有升级版期刊分区…

Java多线程(一)

目录 一、基本概念 程序、进程、线程 单核CPU和多核CPU 并行与并发 使用多线程的优点 二、线程的创建与使用 线程的创建和启动 Thread类 Thread类的特性 Thread类的构造器 API中创建线程的两种方式 创建线程方式一:继承Thread类 创建继承Thread类线程方…

魔众文库系统 v3.5.0 预览页数调整,批量操作命令,多处优化

魔众文库系统基于文档系统知识,建立平台与领域,打造流量、用户、付费和变现的闭环,帮助您更好的搭建文库系统。 魔众文库系统发布v3.5.0版本,新功能和Bug修复累计23项,预览页数调整,批量操作命令&#xff…

Java基础深化和提高 ---- 反射技术

目录 反射机制介绍 什么是反射 反射的作用 创建对象过程 Java创建对象的三个阶段 创建对象时内存结构 反射的具体实现 创建Users类 通过getClass()方法获取Class对象 通过.class 静态属性获取Class对象 通过forName()获取Class对象 获取类的构造方法 通过构造方法创…

设计模式之享元模式(十)

目录 1. 享元模式概述 2. 享元模式在Integer中的应用 1. 享元模式概述 享元模式(Flyweight Pattern) 也叫 蝇量模式,运用共享技术有效地支持大量细粒度的对象。简单来说就是共享对象。 享元模式能够解决重复对象的内存浪费的问题&#xff…

Python3,os模块还可以这样玩,自动删除磁盘文件,非必要切勿操作。

删除磁盘下所有的文件1、引言2、代码实战2.1 模块介绍2.2 获取盘符2.3 获取盘符下的目录2.3.1 os.listdir()2.3.2 os.environ2.3.3 os.getenv()2.4 删除文件2.4.1 删除指定文件下文件2.4.2 删除所有文件下文件3、总结1、引言 小屌丝:鱼哥, 请教你个问题…

Flink基础篇(基础算子+WaterMarker)

Flink高可用HA 依赖于zkFlink ON Yarn两种模式Session模式Per-Job模式前置说明Flink原理数据在两个operator算子之间传递的时候有两种模式:Operator ChainTaskSlot And SharingFlink执行图(ExecutionGraph)APISourceTransformationSink控制台…