Python 流程控制

目录

程序流程

顺序结构

分支结构

单分支

双分支

多分支

if 嵌套

循环结构

while循环

for 循环

退出循环

循环与分支嵌套

附录


程序流程

程序是由语句构成,而流程控制语句 是用来控制程序中每条语句执行顺序的语句。可以通过控制语句实现更丰富的逻辑以及更强大的功能。几乎所有编程语言都有流程控制语句,功能也都基本相似。

其流程控制方式有

  • 顺序结构

  • 分支结构

  • 循环结构

顺序结构

这里最简单最常用的就是顺序结构,即语句从上至下一一执行。

print("程序开始了")
print("程序进行中") # 从上到下依次执行
print("程序结束了") # 从上到下依次执行

分支结构

顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。对于要先做判断再选择的问题就要使用分支结构。

单分支

语法:

'''
if 表达式:代码块
'''    user = input("用户名>>")
pwd = input("密码>>")
if user == "root" and pwd == "123":  # 返回一个布尔值print("登录成功")  # 强烈建议使用四个缩进print("程序结束")

说明:

1、“表达式”可以是一个单一的值或者复杂语句,形式不限,但解释器最后会通过bool获取一个true或者false的布尔值

2、“代码块”由:与具由相同缩进标识的若干条语句组成(一般是四个缩进)。

双分支

双分支语句顾名思义,二条分支二选一执行!

语法格式:

'''
if 表达式:代码块 1
else:代码块 2
'''
user = input("用户名>>")
pwd = input("密码>>")if user == "root" and pwd == "123":  # 返回一个布尔值print("登录成功")  # 强烈建议使用四个缩进print("祝贺你")
else:print("登录失败")print("不好意思")

多分支

多分支即从比双分支更多的分支选择一支执行。

语法格式:

'''
if 表达式 1:代码块 1
elif 表达式 2:代码块 2
elif 表达式 3:代码块 3
...# 其它elif语句
else:代码块 n
'''  score = input("请输入您的成绩>>")  # "100"
# 当成绩大于90的时候显示优秀,否则显示一般
# 将数字字符串,比如"100",转换成一个整型数字的时候,需要int转换
score = int(score)  # 100if score > 100 or score < 0:print("您的输入有误!")
elif score > 90:print("成绩优秀")
elif score > 70:  # else ifprint("成绩良好")
elif score > 60:print("成绩及格")
else:print("成绩不及格")

if 嵌套


score = input("请输入您的成绩>>")  # "100"if score.isdigit():score = int(score)  # 100if score > 100 or score < 0:print("您的输入有误!")elif score > 90:print("成绩优秀")elif score > 70:  # else ifprint("成绩良好")elif score > 60:print("成绩及格")else:print("成绩不及格")
else:print("请输入一个数字")

循环结构

在不少实际问题中有许多具有规律性的重复操作,因此在程序中就需要重复执行某些语句。一组被重复执行的语句称之为循环体,能否继续重复,决定循环的终止条件。

Python语言中的循环语句支持 while循环(条件循环)和for循环(遍历循环)。

while循环

语法:

'''  
while 表达式:循环体
'''    

无限循环

# 案例1
while 1:print("OK")  # 无限循环打印OK,这样使用没有什么意义

限定次数循环,循环打印十遍"hello world"

count = 0  # 初始化语句
while count < 10: # 条件判断print("hello world")count+=1  # 步进语句
print("end")

for 循环

for 循环的语法格式如下:

'''  
for 迭代变量 in 字符串|列表|元组|字典|集合:代码块
'''   

格式中,迭代变量用于存放从序列类型变量中读取出来的元素,所以一般不会在循环中对迭代变量手动赋值;代码块指的是具有相同缩进格式的多行代码(和 while 一样),由于和循环结构联用,因此代码块又称为循环体。

for i in "hello world":print(i)for name in ["张三",'李四',"王五"]:print(name)for i in range(10): # [1,2,3,4,5,6,7,8,9] range函数: range(start,end,step)print(i)

退出循环

如果想提前结束循环(在不满足结束条件的情况下结束循环),可以使用break或continue关键字。

  • break

当 break 关键字用于 for 循环时,会终止循环而执行整个循环语句后面的代码。break 关键字通常和 if 语句一起使用,即满足某个条件时便跳出循环,继续执行循环语句下面的代码。

  • continue

不同于break退出整个循环,continue指的是退出当次循环。

while 1:num = int(input("num>>"))for i in range(1, num + 1):# if i > 100:if i == 6:# breakcontinueprint(i)

循环与分支嵌套

# 案例2
while 1:score = input("请输入您的成绩>>")  # "100"if score.isdigit():score = int(score)  # 100if score > 100 or score < 0:print("您的输入有误!")elif score > 90:print("成绩优秀")elif score > 70:  # else ifprint("成绩良好")elif score > 60:print("成绩及格")else:print("成绩不及格")else:print("请输入一个数字")

附录

分支结构.py

# 流程控制语句
# 1. 顺序语句:从上至下每条语句有且执行一次
# 2. 分支语句:通过判断一个表达式真与假来决定执行哪一部分代码块
# 3. 循环语句# 顺序
print("OK1")
print("OK2")
print("OK3")name = "alex"
age = 23
pwd = "123"# 单分支语句
if name == "rain" and pwd == "123":print("登录成功")双分支
if age > 18:print("亚洲电影")print("欧美电影")print("国产电影")
else:print("天线宝宝")print("阿童木")print("猫眼三姐妹")# 分支嵌套
name = input("用户名:")
pwd = input("密码:")if name == "rain" and pwd == "123":print("登录成功")age = int(input("年龄:"))print("-------")if age > 18:print("亚洲电影")print("欧美电影")print("国产电影")else:print("亚洲电影")print("欧美电影")print("国产电影")
else:print("登录失败")# 多分支语句  if-elif-elsescore = 97if score > 90:print("优秀")
elif score > 80:print("良好")
elif score > 60:print("及格")
else:print("不及格")

循环结构.py

# 程序员底线:1. 避免重复  2. 结偶
'''
while循环:条件循环
while 表达式:循环语句、'''# 无限循环while 1:name = input("用户名:")pwd = input("密码:")if name == "rain" and pwd == "123":print("登录成功!")else:print("登录失败")# 有数循环# 案例1:打印100次OK或者1-100
count = 0  # 初始语句
while count < 100:  # 判断条件count += 1  # 步进语句:count = count+1print(count)# 案例2:  打印100-1count = 0  # 初始语句
while count < 100:  # 判断条件print(100 - count)count += 1  # 步进语句:count = count+1count = 100  # 初始语句
while count > 0:  # 判断条件print(count)count -= 1  # 步进语句:count = count-1# while 循环的应用# 计算 1+2+3+...+100 的和count = 0  # 初始语句
s = 0
while count < 100:  # 判断条件count += 1  # 步进语句:count = count+1print(count)s += count  # s = s +countprint(s)

退出循环.py

count = 0
while count < 100:  # 判断条件count += 1  # 步进语句:count = count+1if count == 66:# break  # 退出整个循环continue  # 退出当次循环print(count)# 案例1:
while 1:name = input("用户名:")pwd = input("密码:")if name == "rain" and pwd == "123":print("登录成功!")breakelse:print("登录失败")print("程序继续!")
# 案例2:# 计算  1+2+3+... +65+67+...+100
count = 0  # 初始语句
s = 0
while count < 100:  # 判断条件count += 1  # 步进语句:count = count+1if count == 66:continueprint(count)s += count  # s = s +countprint(s)

for循环.py

# for循环:遍历循环# 列表 字典names = ["rain", "yuan", "alex", "alvin"]
print(names[0])
print(names[0:2])
count = 0
while count < len(names):print(names[count])count += 1for i in names:print(i)# break# continue

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ipa应用测试平台怎么开开具发票

控制台-个人中心-发票管理 ●点击申请发票可以开具发票 ●申请发票-填写资料-勾选订单 ●个人发票开具以及公司发票开具 ●提交发票申请 ●等待申请成功开具发票 ●发票开具成功&#xff0c;我们可以开具或者查看发票

Leetcode—392.判断子序列【简单】

2023每日刷题&#xff08;四十七&#xff09; Leetcode—392.判断子序列 双指针实现代码 bool isSubsequence(char* s, char* t) {int lens strlen(s);int lent strlen(t);int left 0, right 0;if(lens 0) {return true;}while(right < lent) {if(t[right] s[left])…

pta模拟题(7-15 BCD解密、7-16 数列求和-加强版、7-17 出租、7-18 反向数相加、7-19 一帮一、7-20 连续因子)

7-15 BCD解密 BCD数是用一个字节来表达两位十进制的数&#xff0c;每四个比特表示一位。所以如果一个BCD数的十六进制是0x12&#xff0c;它表达的就是十进制的12。但是小明没学过BCD&#xff0c;把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制…

周报:浅谈对豆瓣网页实战的注意事项

制作整体网页时HTML代码和CSS代码的常用处理方法&#xff1a; 分开HTML代码和CSS代码&#xff0c;专门制作一个CSS文件专门来放置css代码&#xff0c;css文件里一般有作者样式(XXX.css)和通用样式(common.css)。这样会使代码更易维护&#xff0c;且整齐美观。 写代码前的注意…

6 新建工程——寄存器

文章目录 6.1 本地新建工程文件夹6.2 新建工程6.2.1 选择CPU型号6.2.2 在线添加库文件6.2.3 添加文件6.2.4 复制存储器分配文件6.2.5 配置选项卡 版本说明&#xff1a;MDK5.24 6.1 本地新建工程文件夹 可随意命名&#xff0c;该目录下新建 2 个文件夹 Listings 和 Objects 6…

GPC-SCP03安全通道协议

概述&#xff1a; 规范全称&#xff1a; GlobalPlatform Technology Secure Channel Protocol 03 Card Specification V2.3 - Amendment D Version 1.1.2 安全通道的建立的标志即通讯双方都形成三个安全通道共享密钥(Derived Session Key)&#xff0c;它们是Kmac, Krmac, Kenc…

Sass 同时导出JavaScript 和 CSS变量

Sass 官网 安装插件 注意 sass-loader 版本没设太高&#xff0c;否则会报错 Syntax Error: TypeError: this.getOptions is not a function npm i sass sass-loader10 -D创建 Sass 文件 variables.module.scss。注意这里是 module.scss&#xff1a; 否则报错 Cant find st…

docker 搭建开发环境,解决deepin依赖问题

本机环境&#xff1a; deepin v23b2 删除docker旧包 sudo apt-get remove docker docker-engine docker.io containerd runc注意卸载docker旧包的时候Images, containers, volumes, 和networks 都保存在 /var/lib/docker 卸载的时候不会自动删除这块数据&#xff0c;如果你先…

PyQt6 QRadioButton单选按钮控件

​锋哥原创的PyQt6视频教程&#xff1a; 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计33条视频&#xff0c;包括&#xff1a;2024版 PyQt6 Python桌面开发 视频教程(无废话…

Linux部分基础指令讲解

目录 1.echo指令 2.more指令 3.less指令&#xff08;重要&#xff09; 4.head指令 5.tail指令 6.管道| 7.时间相关的指令 8.cal指令 9.find指令 10.grep指令 1.echo指令 我们先看效果 如图所示我们可以看到显示器显示出了hellow world和hellow这两句话&#xff0c;我们的echo的…

SQL Server 2016(创建数据库)

1、实验环境。 某公司有一台已经安装了SQL Server 2016的服务器&#xff0c;现在需要新建数据库。 2、需求描述。 创建一个名为"db_class"的数据库&#xff0c;数据文件和日志文件初始大小设置为10MB&#xff0c;启用自动增长&#xff0c;数据库文件存放路径为C:\db…

《地理信息系统原理》笔记/期末复习资料(8. 数字高程模型)

目录 8. 数字高程模型 8.1 概述 8.1.1 数字高程模型概念 8.1.2 数字高程模型特点 8.2 DEM数据分布特征 8.2.1 格网状数据 8.2.2 离散数据 8.3 DEM的表示方法 8.3.1 数学方法 8.3.2 图形方法 8.3.3 DEM三维表达方法 8.4 TIN的生成方法 8.4.1 人工方法 8.4.2 程序自…