详解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 相关文章推荐
Python实现抓取网页并且解析的实例
Sep 20 Python
Python入门篇之字符串
Oct 17 Python
一波神奇的Python语句、函数与方法的使用技巧总结
Dec 08 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
Feb 08 Python
Django model序列化为json的方法示例
Oct 16 Python
Python求离散序列导数的示例
Jul 10 Python
Python Threading 线程/互斥锁/死锁/GIL锁
Jul 21 Python
Python 模拟生成动态产生验证码图片的方法
Feb 01 Python
Python多线程正确用法实例解析
May 30 Python
详解利用python识别图片中的条码(pyzbar)及条码图片矫正和增强
Nov 17 Python
python xlwt模块的使用解析
Apr 13 Python
python使用matplotlib绘制图片时x轴的刻度处理
Aug 30 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文件中是否含有bom的函数
2012/05/31 PHP
ThinkPHP内置jsonRPC的缺陷分析
2014/12/18 PHP
PHP使用Redis替代文件存储Session的方法
2017/02/15 PHP
php动态读取数据清除最右边距的方法
2017/04/12 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
2018/04/04 PHP
Javascript里使用Dom操作Xml
2007/01/22 Javascript
全面了解JS中的匿名函数
2016/06/29 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
2016/11/07 Javascript
原生js轮播(仿慕课网)
2017/02/15 Javascript
关于ES6的六个小特性(二)
2017/02/20 Javascript
jQuery插件HighCharts实现2D柱状图、折线图的组合多轴图效果示例【附demo源码下载】
2017/03/09 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
jQuery实现菜单栏导航效果
2017/08/15 jQuery
基于bootstrop常用类总结(推荐)
2017/09/11 Javascript
angular 实现同步验证器跨字段验证的方法
2019/04/11 Javascript
vue轻量级框架无法获取到vue对象解决方法
2019/05/12 Javascript
了解前端理论:rscss和rsjs
2019/05/23 Javascript
微信小程序自定义联系人弹窗
2020/05/26 Javascript
python冒泡排序简单实现方法
2015/07/09 Python
Python切片操作实例分析
2018/03/16 Python
python遍历文件夹,指定遍历深度与忽略目录的方法
2018/07/11 Python
python消除序列的重复值并保持顺序不变的实例
2018/11/08 Python
python 利用for循环 保存多个图像或者文件的实例
2018/11/09 Python
在python里创建一个任务(Task)实例
2020/04/25 Python
html5 利用重力感应实现摇一摇换颜色可用来做抽奖等等
2014/05/07 HTML / CSS
Keds官方网站:购买帆布运动鞋和经典皮鞋
2016/11/12 全球购物
Champs Sports加拿大:北美最大的以商场为基础的专业运动鞋和服装零售商之一
2018/05/01 全球购物
S’well Bottle保温杯官网:绝缘不锈钢水瓶
2018/05/09 全球购物
Hanky Panky官方网站:内衣和睡衣
2019/07/25 全球购物
个人简历自我鉴定
2013/10/11 职场文书
暑期社会实践学生的自我评价
2014/01/09 职场文书
安全施工责任书
2014/08/25 职场文书
离婚协议书该怎么写
2014/10/04 职场文书
消防演习感想
2015/08/10 职场文书
pandas中关于apply+lambda的应用
2022/02/28 Python
Python first-order-model实现让照片动起来
2022/06/25 Python