详解Python中的分支和循环结构


Posted in Python onFebruary 11, 2020

一.条件语句

条件语句可以给定一个判断条件,并在程序执行过程中判断该条件是否成立。程序根据判断结果,执行不同的操作,这样就可以改变代码的执行顺序,从而实现更多的功能。

Python中条件语句通常有if语句、if-else语句和if-elif-else语句。

1.if语句

if结构:满足条件就执行某个操作,不满足就不执行。语法: if 条件语句: 

代码段

# 如果num是奇数打印'奇数'
num = 11
if num % 2 !=0:
 print('奇数')

运行结果:

奇数 1

2.if-else语句

if-else结构:满足条件执行某个操作,不满足条件的时候执行另外一个操作。

语法:if

条件语句:

代码段1(满足条件要执行的代码)

 

else:

代码段2(不满足条件要执行的代码)

# 根据成绩合格范围打印'合格'或者'不合格'
grade = 96
if grade >= 60:
 print('合格')
else:
 print('不合格')

运行结果:

合格 1

3.if-elif-else语句

if-elif-else结构:满足不同的条件执行不同的操作,后面的条件是在前面的条件不成立的时候进行判断的。

语法:if 条件语句1:

 代码段1

 

elif 条件语句2:

 代码段2

 

elif 条件语句3:

 

代码段3

 

……

 

else:

 

代码段N

# 根据成绩合格范围打印'优秀(90以上)''合格(60-90)'、'不合格(60以下)'
grade = 96
if grade > 90:
 print('优秀')
elif 60 <= grade < 90:
 print('合格')
else:
 print('不合格')

运行结果:

优秀 1

二.循环语句

循环的意思是让程序重复地执行某些语句。在实际应用中,当碰到需要多次重复地执行一个或多个任务时,可考虑使用循环语句来解决。其特点是在给定条件成立时,重复执行某个程序段。

1.for循环

语法:for 变量名

in 序列:

 

循环体

# 循环十次hello world!
for index in range(10):
 print(index, 'hello world!')

运行结果:

0 hello world! 1 hello world! 2 hello world! 3 hello world! 4 hello world! 5 hello world! 6 hello world! 7 hello world! 8 hello world! 9 hello world!

注释:range函数可以产生指定范围的数字序列,配合for循环使用可以更加方便的控制for循环的循环次数。

1)range(N)---产生0~N-1的数字序列例如:range(3) -> 0,1,2 1)range(M,N)---产生M~N-1的数字序列例如:range(1,4) -> 1,2,3 1)range(M,N,step)---从M开始每隔step产生下一个数字,到N前一个数为止例如:range(0,4,2) -> 0,2

2.while循环

语法:while 条件语句:

循环体

num = 0
while num < 4:
 print('num:',num)
 num += 1

运行结果:

num: 0 num: 1 num: 2 num: 3

for与while的使用情景:

使用for循环情景:1.循环次数确定的时候  2.遍历序列使用while循环情景:1.死循环

2.循环次数不确定的时候

三.循环嵌套

在Python语言中是可以允许在一个循环体里面嵌入另一个循环,例如for-for循环,while-while循环,也可以在while循环中可以嵌入for循环,反之,亦行。

i = 2
while i < 10:
 j = 2
 while j <= i / j:
 if not i % j:
 break
 j = j + 1
 if j > i / j:
 print(i, " 是素数")
 i = i + 1

运行结果:

2 是素数 3 是素数 5 是素数 7 是素数

四.continue、break和pass以及else语句

1.continue语句

作用:是循环体中的关键字,用来跳过当前循环的剩余语句,然后继续进行下一轮循环。

for x in range(4):
 print(x, 'hello')
 if x % 2 == 0:
 continue
 print(x, 'world')

运行结果:

0 hello 1 hello 1 world 2 hello 3 hello 3 world

2.break语句

作用:是循环体中的关键字,用来终止循环语句,即使循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。(如果使用嵌套循环,break语句将停止最深层的循环,并开始执行下一行代码。)

for x in range(4):
 print(x, 'hello')
 if x % 2 == 0:
 break
 print(x, 'world')

运行结果:

0 1

3.pass语句

作用:是空语句,不做任何事情,一般用做占位语句,是为了保持程序结构的完整性。

for x in range(4):
 print(x, 'hello')
 if x % 2 == 0:
 pass
 print(x, 'world')

运行结果:

0 hello 0 world 1 hello 1 world 2 hello 2 world 3 hello 3 world

4.else语句

作用: 可以通过判断else中代码有没有执行来判断循环有没有遇到break。

 1)完整的for循环

2)完整的while循环

for 变量 in 序列:

while 条件语句:

循环体

 循环体

else:

 else:

代码段

 代码段

没有遇到break的情景:

for x in range(4):
 print(x)
else:
 print('hello')

运行结果:

0 1 2 3 hello

遇到break的情景:

for x in range(4):
 print(x)
 break
else:
 print('hello')

运行结果:

0

总结

以上所述是小编给大家介绍的Python中的分支和循环结构,希望对大家有所帮助!

Python 相关文章推荐
wxPython中listbox用法实例详解
Jun 01 Python
详谈python http长连接客户端
Jun 12 Python
Python中列表list以及list与数组array的相互转换实现方法
Sep 22 Python
Python eval的常见错误封装及利用原理详解
Mar 26 Python
python实现微信定时每天和女友发送消息
Apr 29 Python
python实现屏保程序(适用于背单词)
Jul 30 Python
使用Python爬虫库requests发送请求、传递URL参数、定制headers
Jan 25 Python
解决安装新版PyQt5、PyQT5-tool后打不开并Designer.exe提示no Qt platform plugin的问题
Apr 24 Python
Django获取model中的字段名和字段的verbose_name方式
May 19 Python
Python实现疫情通定时自动填写功能(附代码)
May 27 Python
浅谈Python程序的错误:变量未定义
Jun 02 Python
python中的random模块和相关函数详解
Apr 22 Python
python re模块匹配贪婪和非贪婪模式详解
Feb 11 #Python
详解Python的三种拷贝方式
Feb 11 #Python
Python @property原理解析和用法实例
Feb 11 #Python
如何使用Python发送HTML格式的邮件
Feb 11 #Python
python模式 工厂模式原理及实例详解
Feb 11 #Python
Python3搭建http服务器的实现代码
Feb 11 #Python
tensorflow实现二维平面模拟三维数据教程
Feb 11 #Python
You might like
Php中用PDO查询Mysql来避免SQL注入风险的方法
2013/04/25 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
php结合web uploader插件实现分片上传文件
2016/05/10 PHP
IE6,IE7下js动态加载图片不显示错误
2010/07/17 Javascript
js左侧三级菜单导航实例代码
2013/09/13 Javascript
js正则表达式中test,exec,match方法的区别说明
2014/01/29 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
jQuery操作DOM之获取表单控件的值
2015/01/23 Javascript
基于jQuery下拉选择框插件支持单选多选功能代码
2016/06/07 Javascript
深入浅析JavaScript中的3DES
2016/08/24 Javascript
JavaScript中定时控制Throttle、Debounce和Immediate详解
2016/11/17 Javascript
jquery Ajax 全局调用封装实例详解
2017/01/16 Javascript
javascript自执行函数
2017/02/10 Javascript
highcharts 在angular中的使用示例代码
2017/09/20 Javascript
微信小程序自动客服功能
2017/11/02 Javascript
vue-cli监听组件加载完成的方法
2018/09/07 Javascript
Vue 监听元素前后变化值实例
2020/07/29 Javascript
JS指定音频audio在某个时间点进行播放
2020/11/28 Javascript
Vue $attrs &amp; inheritAttr实现button禁用效果案例
2020/12/07 Vue.js
使用pygame模块编写贪吃蛇的实例讲解
2018/02/05 Python
单链表反转python实现代码示例
2018/02/08 Python
python 巧用正则寻找字符串中的特定字符的位置方法
2018/05/02 Python
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
在python中使用xlrd获取合并单元格的方法
2018/12/26 Python
Python爬虫抓取指定网页图片代码实例
2020/07/24 Python
基于Python的图像阈值化分割(迭代法)
2020/11/20 Python
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
Seavenger官网:潜水服、浮潜、靴子和袜子
2020/03/05 全球购物
娇韵诗俄罗斯官方网站:Clarins俄罗斯
2020/10/03 全球购物
法院四风对照检查材料思想汇报
2014/10/06 职场文书
退休欢送会致辞
2015/07/31 职场文书
党员反邪教心得体会
2016/01/15 职场文书
高三数学教学反思
2016/02/18 职场文书
优秀创业计划书分享
2019/07/19 职场文书
Python爬取英雄联盟MSI直播间弹幕并生成词云图
2021/06/01 Python
python 进阶学习之python装饰器小结
2021/09/04 Python