详解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实现的下载8000首儿歌的代码分享
Nov 21 Python
搞笑的程序猿:看看你是哪种Python程序员
Jun 12 Python
在Django中限制已登录用户的访问的方法
Jul 23 Python
Python解析树及树的遍历
Feb 03 Python
Python和Java进行DES加密和解密的实例
Jan 09 Python
python实现单向链表详解
Feb 08 Python
python生成ppt的方法
Jun 07 Python
python实现将一维列表转换为多维列表(numpy+reshape)
Nov 29 Python
利用django model save方法对未更改的字段依然进行了保存
Mar 28 Python
使用Python pip怎么升级pip
Aug 11 Python
用Python写一个简易版弹球游戏
Apr 13 Python
Python 机器学习工具包SKlearn的安装与使用
May 14 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
Terran剧情介绍
2020/03/14 星际争霸
PHP面向对象精要总结
2014/11/07 PHP
PHP 微信支付类 demo
2015/11/30 PHP
wordpress网站转移到本地运行测试的方法
2017/03/15 PHP
phpstorm激活码2020附使用详细教程
2020/09/25 PHP
javascript 出生日期和身份证判断大全
2008/11/13 Javascript
jquery 经典动画菜单效果代码
2010/01/26 Javascript
使用jQuery重置(reset)表单的方法
2014/05/05 Javascript
Json实现异步请求提交评论无需跳转其他页面
2014/10/11 Javascript
Web Uploader文件上传插件使用详解
2016/05/10 Javascript
vue.js中mint-ui框架的使用方法
2017/05/12 Javascript
Vue中使用vue-i18插件实现多语言切换功能
2018/04/25 Javascript
js实现弹出框的拖拽效果实例代码详解
2019/04/16 Javascript
Vue匿名插槽与作用域插槽的合并和覆盖行为
2019/04/22 Javascript
vue 基于abstract 路由模式 实现页面内嵌的示例代码
2020/12/14 Vue.js
[51:36]EG vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
python网络编程学习笔记(六):Web客户端访问
2014/06/09 Python
windows下安装python的C扩展编译环境(解决Unable to find vcvarsall.bat)
2018/02/21 Python
使用python serial 获取所有的串口名称的实例
2019/07/02 Python
Django Form and ModelForm的区别与使用
2019/12/06 Python
python GUI库图形界面开发之PyQt5结合Qt Designer创建信号与槽的详细方法与实例
2020/03/08 Python
python的Jenkins接口调用方式
2020/05/12 Python
简单了解python关键字global nonlocal区别
2020/09/21 Python
Python 数据分析之逐块读取文本的实现
2020/12/14 Python
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
英国在线泳装店:Simply Swim
2019/05/05 全球购物
深圳茁壮笔试题
2015/05/28 面试题
金鑫耀Java笔试题
2014/09/06 面试题
学生打架检讨书1000字
2014/01/16 职场文书
《我为你骄傲》教学反思
2014/02/20 职场文书
公司年会搞笑主持词
2014/03/24 职场文书
小学生期末评语大全
2014/04/21 职场文书
成立公司计划书
2014/05/07 职场文书
教师职业道德事迹材料
2014/08/18 职场文书
升学宴学生答谢词
2015/01/05 职场文书
乡镇党建工作总结2015
2015/05/19 职场文书