【Python】#3 基本程序控制

文章目录

  • 一、分支结构if语句(Python没有switch)
      • tips:紧凑形式:适用于简单表达式的二分支结构
  • 二、循环结构
    • 1. for语句
      • range函数
    • 2. while语句
    • 3. 循环保留字:break/continue与带else的循环语句


一、分支结构if语句(Python没有switch)

在这里插入图片描述

  • if、elif、else是保留字,elif是else if的简写, 表示带条件的else语句
  • 条件表达式(简称条件)可以是关系表达式、逻辑表达式、算术表达式等任意合法的表达式,其最后返回结果为布尔逻辑值:真(True)或假(False)
  • 冒号(:)是不可缺少的,表示后面是满足条件后要执行的语句块
  • 语句块是由若干个(单个或多个)具有相同缩进量的语句组成。语句块要比if、elif、else多一个缩进

判断组合操作符

操作符及使用描述
x and y两个条件x和y的逻辑与
x or y两个条件x和y的逻辑或
not x条件x的逻辑非

tips:紧凑形式:适用于简单表达式的二分支结构

<表达式1> if <条件>else <表达式2>

执行表达式1 当条件为真;反之执行表达式2。
eg:

guess = evalinput("猜数字:"))
print("猜{}了".format("对"if guess==99 else "错”)) 

二、循环结构

  • Python中,根据循环体执行次数是否提前确定,循环语句可分为确定次数循环非确定次数循环
  • 确定次数循环是指程序能提前确定循环体执行的次数,适用于遍历或枚举可迭代对象中元素的场合,又称计数(遍历)循环,可采用for循环语句实现。
  • 非确定次数循环是指程序不能提前确定循环体可能执行的次数,是通过循环条件判断是否继续执行循环体,又称条件(无限)循环,可采用while循环语句实现。

1. for语句

在这里插入图片描述

  • 由保留字for和in组成,完整遍历所有元素后结束
  • 从遍历结构中逐一提取元素,放在循环变量中。每次循环,所获得元素放入循环变量,并执行一次语句块
  • 遍历结构包括元组、字符串、文件、组合数据类型和range()函数等等

eg:
在这里插入图片描述

range函数

range(start[, stop, step])函数三个参数分别为初值, 终值, 步长

  • 当只使用一个参数时:range(N)
    返回从0到N(不包括N)的一系列数字范围,步长为1
  • 当使用两个参数时:range(n1,n2)
    返回从n1到n2(不包括n2)的一系列数字范围,步长为1
  • 当使用两个参数时:range(n1,n2,step)
    返回从n1到n2(不包括n2)的一系列数字范围,步长为step

值得注意的是:

  • range()函数仅适用于整数,所有参数都必须是整数。

  • 步长值可以为正数或负数,不得为零。

  • 用户可以按索引访问range()中的项目,就像用户访问列表一样。
    在这里插入图片描述

2. while语句

在这里插入图片描述

  • while是保留字,提示后面语句是while循环语句循环条件是一个条件表达式。
  • 条件循环一直保持循环操作直到特定循环条件不被满足才结束,不需要提前知道确定循环次数。

3. 循环保留字:break/continue与带else的循环语句

  • break和continue是循环结构语句中两个保留字,用于辅助控制循环执行。
  • break语句和continue语句是for循环或while循环 中循环体中特殊语句,通常用在选择结构语句中,满足一定条件时执行,从而中断正常的循环控制流程。
  • continue语句仅结束本次循环,并返回到循环的起始处,循环条件满足时则开始执行下一次循环
  • break语句是结束当前循环(不是跳出所有循环),跳转到循环语句的后继语句执行。

带else的循环语句

Python中,for循环和while循环都有一个可选的else语句,在循环迭代正常完成之后执行。
如果是以break语句等的非正常方式退出循环,则else语句将不被执行。

在这里插入图片描述


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

关于伴行天使车载监护器的技术路线

为了判断分析并反馈孩童是否昏睡状态,以预防因分心后排而导致的交通事故,本团队根据基于回归树对齐算法中获取的数据,建立了疲劳度评分机制。 本评分机制采用人脸关键点智能标注模型检测人脸,通过人脸识别68特征点检测、分别获取…

16.读取指定路径下的txt文档然后合并内容为一个txt文档。

1.题目要求 分别读取路径为 ./middle/phone/base/1_student_0.txt, ./middle/vr/base/1_teacher.txt, ./nearby/phone/base/1_student_0.txt, ./nearby/vr/base/1_teacher.txt, ./outside/phone/base/1_student_0.txt, ./outside/vr/base/1_teacher.txt 里面的文件&#xff…

【MATLAB源码-第43期】基于matlab的turbo码误码率仿真比较不同迭代次数,采用logmap/sova算法。

操作环境: MATLAB 2022a 1、算法描述 Turbo码是一种前向纠错码 (Forward Error Correction, FEC),在 1993 年由法国的两位研究员 Claude Berrou 和 Alain Glavieux 提出。这种编码技术以其接近 Shannon 极限的高性能而受到广泛关注。以下是关于 Turbo…

【word】文档标题如何自动编号

我在写一个word文档的时候,每一级标题的格式都设置好了,包括字体,大小等等,但是如何自动编号呢? 在写中期报告的时候,我对每一级标题的格式都创建了一个单独的样式,像这样: 对于每一…

Linux——信号量与基于环形队列的生产者消费者模型

目录 前言 一、信号量 二、信号量的接口 1.初始化 2.销毁 3.申请信号量 4. 释放信号量 三、基于环形队列的生产者消费者模型 1.环形队列的理解 2.生产者消费者的设计 3.单消费者单生产者环形队列的实现 4.多消费者多生产者环形队列的实现 前言 之前,…

AI的说服力如人类?Anthropic最新研究揭秘机器的辩论能力|TodayAI

人们常常对人工智能模型在对话中的说服力表现持怀疑态度。长久以来,社会上一直存在一个疑问:人工智能是否会达到人类那样,在对话中具有改变他人想法的能力? 直到最近,这一领域的实证研究相对有限,对于人工…

HTML5 新增语义标签及属性

个人主页:学习前端的小z 个人专栏:HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 ✍HTML5 新增语义标签及属性💎1 HTML5 新增的块级语义化标签&…

海外代理IP在跨境电商中发挥什么作用?

在我国跨境电商的发展中,海外代理IP的应用日益广泛,它不仅帮助商家成功打入国际市场,还为他们在多变的全球电商竞争中保持优势。下面是海外代理IP在跨境电商中五个关键的应用场景。 1、精准的市场分析 了解目标市场的消费者行为、产品趋势以…

pyinstaller工具打包python项目详细教程

使用 Pyinstaller工具 编译打包 Python 项目生成 exe 可执行文件 1.pyinstaller介绍: 介绍:PyInstaller 是一个将 Python 程序转换为独立可执行文件的工具。它能够在 Windows、Linux、Mac OS X、AIX 和 Solaris 等多种系统上运行。详细介绍可参考pyins…

记录--病理切片图像处理

简介 数字病理切片,也称为全幻灯片成像(Whole Slide Imaging,WSI)或数字切片扫描,是将传统的玻片病理切片通过高分辨率扫描仪转换为数字图像的技术。这种技术对病理学领域具有革命性的意义,因为它允许病理…

Git分布式版本控制系统——在IDEA中使用Git(二)

四、IDEA中本地仓库的操作 1.将文件加入暂存区 2.将暂存区的文件提交到版本库(相当于git commit) 3.查看日志 五、IDEA中远程仓库的操作 1.查看远程仓库 2.添加远程仓库 3.推送至远程仓库 4.从远程仓库拉取

pyqt实现星三角减压启动

这个对于plc上实现是非常容易得。它本来就是逻辑控制器,如果用代码实现它,该怎么做呢?这个实现起来看似简单,实则是有不少坑的(大神除外)。我一直想用类来封装,让它继承QObject,为啥非要继承QOb…

为什么MySQL数据库超过2000万条数据,查询依然很快:B+树和数据页结构解析

MYSQL数据库单表建议最大2000万条数据,很多人都说如果超过了2000万条数据,性能就会下降的特别厉害。但是你实际上存储后,发现即使超过了2000万但是查询依旧很快,这是为什么? Mysql为了查询速度,内部使用了…

私域流量变现干货:轻松盘活,高效增长!

你知道如何增长私域流量并将这些流量转化为实际收益,让我们的品牌价值最大化吗? 今天,就分享几点干货,帮助大家盘活私域流量,实现高效增长! 1、精准定位和用户画像 首先,了解您的私域流量源于…

JavaWeb开发03-Mybatis入门-基础操作-XML映射文件-动态SQL

一、Mybatis-入门 Java程序控制数据库 1.入门 定义实体类:一定要和表中的字段一一对应 配置连接数据库数据 建立Mapper层语句,来获取数据库数据以及将其封装到user的list中去。 2.配置SQL提示 为了进行查询数据库中有哪些表,所以得连接数据…

详解IP证书申请

申请IP证书,也被称为IP SSL证书,是一种特殊的SSL证书,它不同于传统的域名验证(DV)证书,是通过验证公网IP地址而不是域名来确保安全连接。这种证书用于保护IP地址,并在安装后起到加密作用。以下是…

VTK —— 一、Windows10下编译VTK源码,并用Vs2017代码测试(附编译流程、附编译好的库、vtk测试源码)

效果 编译 1、下载VTK8.2.0源码        2、解压源码后,进入目录创建build目录,同时在build内创建install目录 (下图install目录是在cmake第一次后才手动创建,建议在创建build时创建)        3、打开CMake,如下图填入…

CSS 这就是一个按照我看到的css ,边用边总结的笔记~

margin 和 paddingdisplay外部表现类(display-outside) : block , inline内部表现类(display-inside) : flex,gird,table,flow,flow-root,ruby margin 和 padding 可以设置1~4个属性 属性个数属性值1一起设置 上下左右2分别设置 上下 , 左右3分别设置 上 , 左右 , 下4分别设置…

戏作打油诗《无知》

笔者经营多年的《麻辣崇州论坛》,半月前突被攻击我在“霸屏”,没处讲理,特戏作打油诗《无知》一首,为那个无理取闹、砸我“麻辣崇州论坛”的无知小儿画像如下。 请点击链接,一目了然:崇州论坛-麻辣社区 没…

Gemini国内怎么使用

GPT、Claude、Gemini全系列模型国内使用方法来了! 一直以来很多人问我能不能有个稳定,不折腾的全球AI大模型测试网站,既能够保证真实靠谱,又能够保证稳定、快速,不要老动不动就挂了、出错或者漫长的响应。 到目前为止…