【Python基础入门系列】第04天:Python 流程控制

在编程的世界中,流程控制是程序员运行的基础,流程控制决定了程序按照什么样的方式去执行,本节给大家介绍 Python 流程控制相关语法。


if 语句

if 语句表示如何发生什么样的条件,执行什么样的逻辑。

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

1)单一分支

if 条件表达式:【代码块】
【后续代码】
执行流程:如果条件表达式为真,则执行【代码块】。否则不执行,直接执行if语句后面的【后续代码】
注意:【代码块】必须缩进单if语句可以嵌套

2) 双向分支

if 条件表达式:【语句块A】
else:【语句块B】
【后续代码】
执行流程:如果条件表达式为真,执行【语句块A】然后执行【后续代码】,否则执行【语句块B】,然后再执行【后续代码】,二选一,不可能既执行A有执行B
注意:【语句块A】和【语句块B】必须缩进if-else可以嵌套

3)多向条件分支

if 条件1:【代码段1】
elif 条件2:【代码段2】
............
elif 条件n:
【代码段n】
else:【else语句块】
【后续代码】
执行流程:多选一,如果满足条件1,执行【代码段1】,然后跳出if-elif语句,执行【后续代码】,否则判断是否满足条件2,如果满足执行【代码段2】,然后跳出if-elif语句,执行【后续代码】...。如果所有条件都不满足,执行【else语句块】,然后再执行【后续代码】。
注意:else是可选的,可以写也可以不写。

示例:


x = int(input("Please enter an integer: "))x = -5
if x < 0:x = 0print('Negative changed to zero')
elif x == 0:print('Zero')
elif x == 1:print('Single')
else:print('More')

可能会有零到多个 elif 部分,else 是可选的。关键字 ‘elif’ 是 ’else if’ 的缩写,这个可以有效地避免过深的缩进。if … elif … elif … 序列用于替代其它语言中的 switch 或 case 语句。


for 循环

Python for 循环可以遍历任何序列的项目,如一个 列表 或者一个 字符串。

语法:

for 循环的语法格式如下:

 

'''
for 后跟变量名,in 后跟序列,注意加冒号
for 循环每次从序列中取一个值放到变量中
此处的序列主要指 列表 元组 字符串 文件
'''
for iterating_var in sequence:
statements(s)

示例如下:

 
for letter in 'Python': # 第一个实例print('当前字母 :', letter)fruits = ['banana', 'apple', 'mango']for fruit in fruits: # 第二个实例print('当前字母 :', fruit)print("Good bye!")

也可以通过索引地址来遍历内容

 
fruits = ['banana', 'apple', 'mango']
for index in range(len(fruits)):print('当前水果 :', fruits[index])print("Good bye!")

循环概念

广义:一个周期现象或者重复出现的情况,这种状态被称为循环

狭义:在满足条件的情况下,反复执行某一段代码,在编程语言中出现的这种现象被称为循环。被反复执行的这段代码被称为循环体

当反复执行某段代码时,需要在合适的时机将循环停止下来,否则会产生死循环

Python中提供的循环语句:while语句,for-in语句

 

while的使用

1 while语法

while 表达式:循环体

工作原理:遇到while语句时,首先计算表达式的值,如果表达式的值为假,则跳过整个while语句,继续执行下面的代码;如果表达式的值为真,则执行循环体

2 while-else

while 表达式:
循环体
else:【else语句块】

说明:当while语句执行完成之后,执行【else语句块】,如果用break跳出循环则不执行else

3 死循环

在循环语句中,表达式永远为真的循环

while True:
#循环体while 1:
#循环体

4 while语句的嵌套

while 条件1:    #外层循环【语句块A】while 条件2:  #内存循环
【语句B】

执行流程:首先判断外层循环的条件1,如果为真,则执行循环体中的【语句块A】,执行内层循环,判断条件2是否成立,如果成立,执行内层循环的【语句块B】,执行完内层循环后,重新判断外层循环条件....

  • 特点:外层循环走一步,内层循环执行一遍

  • 外层循环和内层循环的循环变量必须不同

语法:

 

while 判断条件:
执行语句……

示例:

count = 0
while (count < 9):print( 'The count is:', count)count = count + 1print("Good bye!")

 

也可以在 while 循环中添加判断逻辑


count = 0
while count < 5:print(count, " is less than 6")count = count + 1
else:print(count, " is not less than 6")

 


range() 函数

如果你需要一个数值序列,内置函数 range() 会很方便,它生成一个等差级数链表:

语法:

 

range (start, end, scan):

参数含义:

  • start:计数从 start 开始。默认是从 0 开始。例如 range(5) 等价于 range(0, 5);

  • end:计数到 end 结束,但不包括 end.例如:range(0, 5) 是[0, 1, 2, 3, 4]没有 5

  • scan:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

示例:

 
for i in range(6):print(i)
print(range(6),'finish')for i in range(6,10):print(i)
print(range(6,10),'finish')for i in range(6,12,2):print(i)
print(range(6,12,2),'finish')

需要迭代链表索引的话,如下所示结合使 用 range() 和 len():


a = ['i', 'love', 'coding', 'and', 'free']
for i in range(len(a)):print(i, a[i])

break 用法和continue、pass

break用于结束当前循环。只对当前这一重循环起作用。break只能出现在循环中。

break示例:


for letter in 'ityouknow': # 第一个实例if letter == 'n': # 字母为 n 时中断breakprint ('当前字母 :', letter)

 

continue 语句用来跳过当前循环的剩余语句,然后重新判断循环条件,开启下一轮循环。continue只能出现在while和for循环中

continue  示例:

 
for letter in 'ityouknow': # 第一个实例
if letter == 'n': # 字母为 n 时跳过输出continueprint ('当前字母 :', letter)

 

pass 示例:

 

while True:
pass # Busy-wait for keyboard interrupt (Ctrl+C)


# 这通常用于创建最小结构的类:

class MyEmptyClass:
pass

总结

本节给大家介绍了 Python 语法中的流程控制相关语法,方便后期在代码逻辑中进行条件控制,留一个小问题,试着去用循环打印一下九九乘法表,答案下期揭晓。

参考:

http://www.pythondoc.com/pythontutorial3
https://www.runoob.com/python3/python3-tutorial.html

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

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

相关文章

UGLY NUMBERS II

不去重错误版 17.4.23 long isMin (long a, long b) { if (a > b) a b; return a;}long nthUglyNumber(long n) { long *l (long*)malloc(n*sizeof(long)); for (long i 0; i < n; i) l[i] 0; l[0] 1; long p2, p3, p5 0; for(long i 0; i < n - 1; i) { l[i …

excel合并两列内容_还在为合并WPS表格(Excel)中两列内容而犯愁?此方法简单高效...

我们在处理WPS表格(Excel)数据时&#xff0c;时常需要将两列甚至更多列的内容合并显示在同一列中&#xff0c;就像这样&#xff1a;这个时候大家是怎么解决的呢&#xff1f;路人&#xff1a;复制粘贴So easy&#xff01;小杜&#xff1a;不止两三行啊……路人&#xff1a;复制粘…

Css基本语法及页面引用

Css基本语法及页面引用 CSS代码出现在三个地方 </head><body><b style....>兄弟连</b> <!-- 1. 行内样式,内联样式, 作为 style属性值 --></body>css基本语法 css的定义方法是&#xff1a; 选择器 { 属性:值; 属性:值; 属性:值;} 选…

【Python基础入门系列】第05天:Python函数

前面我们写过九九乘法表&#xff0c;但如果我要七七乘法表或五五乘法表的话&#xff0c;你会看到三者代码极其类似&#xff0c;只是循环变量不同&#xff0c;那么如何做到代码重用&#xff0c;而不是简单拷贝黏贴修改呢&#xff0c;其实可是使用函数完成这一功能! 先来试着看一…

【Java基础】 JQuery的常用操作

jQuery的常用操作一、隐藏显示对象id为test的元素的display修改成了“none”&#xff0c;即隐藏了id为test的元素&#xff1a;$(#test).css(display,none)或$(#test).style.display"none"我们经常用到的是切换一个元素的隐藏与现实&#xff0c;下面给出代码&#xff…

store_coding_state (cs_cm)的作用

// 以下是对当前宏块进行编码&#xff08;这里的编码主要目的是为了计算按当前组合方式编码// 生成码流的大小&#xff0c;因此编码前要保存当前编码状态&#xff0c;编码完成后必须恢复现场&#xff09;// S T O R E C O D I N G S T A T E //-----------------------…

第十五届北京师范大学程序设计竞赛决赛(网络同步赛) B lca水 D 思维,找规律...

第十五届北京师范大学程序设计竞赛决赛&#xff08;网络同步赛&#xff09; B. Borrow Classroom 题意&#xff1a;一棵树&#xff0c;点 1为根&#xff0c;一个人从点 b到 点 c再到点 1&#xff0c;第二个人从点 a出发&#xff0c;问第二个人能否截住第一个人。 tags&#xff…

macbook所有型号大全_苹果笔记本型号大全

很多朋友在选购苹果笔记本也就是MacBook的时候都会考虑究竟买哪一个系列会比较好&#xff0c;下面就为大家介绍一下苹果笔记本型号大全都有什么&#xff0c;希望以下的介绍能够帮助到您。苹果笔记本型号大全目前苹果笔记本有以下的几个主要的型号&#xff1a;1、MacBook Air是目…

【Python基础入门系列】第06天:Python 模块和包

在计算机程序的开发过程中&#xff0c;随着程序代码越写越多&#xff0c;在一个文件里代码就会越来越长&#xff0c;越来越不容易维护。 为了编写可维护的代码&#xff0c;我们把很多函数分组&#xff0c;分别放到不同的文件里&#xff0c;这样&#xff0c;每个文件包含的代码…

Css中的选择器

Css选择器 CSS代码用来修饰 HTML元素. 要用CSS代码设置样式, 首先要选中HTML元素. 用来选中 元素的 代码称为 选择器, 或 选择符. html元素是指, 标签与标签包裹内容的整体. 常用的选择器有如下几种&#xff1a; 1、标签选择器 标签选择器&#xff0c;此种选择器影响范围大…

福州联通与市政府携手 共筑新型智慧城市

“福州联通今年将投入专项资金&#xff0c;在福州市区建设NB-IoT网络&#xff0c;包括2000个载扇部署&#xff0c;建设一张覆盖完备、性能领先的窄带物联网。”据介绍&#xff0c;去年9月&#xff0c;福州联通与福州市政府正式签署《共同推进窄带物联网&#xff08;NB-IoT&…

流媒体技术的国内外动态

1、大规模流媒体应用中关键技术的研究 支持大规模用户在线使用的流媒体应用是Internet中极富潜力的一项“重磅级用”,但由于Internet缺乏服务质量(QoS)与相应的安全保障,并且网络和终端系统又存在着较大的异构性,这使得在Internet上构建支持大规模用户的在线流媒体应用面临很多…

空间直线与平面的交点

这内容属于计算几何&#xff0c;在 3D游戏开发编程基础 或者在游戏开发中的数学和物理算法 这种资料上也可以找到相关的内容和代码。或者更广泛点称为是计算机图形学&#xff0c; 接下来我们进入正题&#xff0c;如果直线不与平面平行&#xff0c;将存在交点。如下图所示&#…

iphone导出视频 无法连接到设备_拷贝iphone照片,显示无法连接设备?TRIZ 3秒钟解决...

手机存储满了&#xff0c;想把手机里面的照片和视频拷贝出来。 又不想交给苹果cloud的“苹果税”。USB手动连上IPHONE&#xff0c;结果每次复制了几百兆&#xff0c;就会弹出“无法连接设备”&#xff0c;导致拷贝失败。并且每次重新连接之后&#xff0c;删掉的照片又出现在手机…

【Python基础入门系列】第07天:Python 数据结构--序列

python内置序列类型最常见的是列表&#xff0c;元组和字符串。&#xff08;序列是python中最基础的数据结构&#xff0c;而数据结构是计算机存储&#xff0c;组织数据的方式。&#xff09; 另外还提供了字典和集合的数据结构&#xff0c;但他们属于无顺序的数据集合体&#xf…

Css颜色和文本字体

Css颜色,文本字体 css颜色表示法 颜色名表示&#xff0c;比如&#xff1a;red 红色&#xff0c;gold 金色16进制数值表示&#xff0c;比如&#xff1a;#ff0000 表示红色&#xff0c;这种可以简写成 #f00RGB颜色: 红(R)、绿(G)、蓝(B)三个颜色通道的变化 background-color: r…

springBoot(20):使用Spring Session实现集群-redis

一、session集群的解决方案1.1、扩展指定server利用Servlet容器提供的插件功能&#xff0c;自定义HttpSession的创建和管理策略&#xff0c;并通过配置的方式替换掉默认的策略。缺点&#xff1a;耦合Tomcat/Jetty等Servlet容器&#xff0c;不能随意更换容器。1.2、利用Filter利…

docker desktop ubuntu镜像_原创 | Docker入门,看了不理解,假一赔命

写在前面这篇博客适合谁&#xff1f;对于Docker并不了解&#xff0c;只是有一点模糊的感觉&#xff0c;觉得Docker可以当成虚拟机用之类的只是下载了Docker软件&#xff0c;对于怎么配置&#xff0c;怎么玩&#xff0c;第一步干什么&#xff0c;完全一无所知其二&#xff0c;我…

Windows - Windows下安装MSI程序遇到2503和2502错误

三个步骤可以解决这个问题&#xff1a; 1&#xff09; 以管理员身份开启命令行模式并键入msiexec /package <msi文件路径> 2&#xff09; 修改组策略 计算机配置 ->> 管理模板 ->> Windows组件 ->> Windows Installer ->> 始终以提升的权限进行安…

如何确定h.264的码率

A:如何确定h.264的码率&#xff1f; 码率 编码产生的总比特数 * 帧频 / 编码总帧数码率控制机制就是使编码器编码产生的码流尽量符合你设定的码率。从上面的公式可以看出&#xff0c;当编码帧数和帧频确定后&#xff0c;码率控制要做的就是控制编码产生的比特数。 A:我现在想…