详解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 相关文章推荐
用PyQt进行Python图形界面的程序的开发的入门指引
Apr 14 Python
Python中的连接符(+、+=)示例详解
Jan 13 Python
itchat和matplotlib的结合使用爬取微信信息的实例
Aug 25 Python
对Python闭包与延迟绑定的方法详解
Jan 07 Python
Python使用统计函数绘制简单图形实例代码
May 15 Python
Django如何自定义model创建数据库索引的顺序
Jun 20 Python
基于python框架Scrapy爬取自己的博客内容过程详解
Aug 05 Python
使用OpCode绕过Python沙箱的方法详解
Sep 03 Python
Python range、enumerate和zip函数用法详解
Sep 11 Python
Python变量格式化输出实现原理解析
Aug 06 Python
Python中使用Selenium环境安装的方法步骤
Feb 22 Python
Python Flask搭建yolov3目标检测系统详解流程
Nov 07 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
IIS环境下快速安装、配置和调试PHP5.2.0
2006/12/17 PHP
又一个php 分页类实现代码
2009/12/03 PHP
PHP pthreads v3下worker和pool的使用方法示例
2020/02/21 PHP
JavaScript获取onclick、onchange等事件值的代码
2013/07/22 Javascript
js 弹出框只弹一次(二次修改之后的)
2013/11/26 Javascript
node.js中的socket.io入门实例
2014/04/26 Javascript
微信JS接口汇总及使用详解
2015/01/09 Javascript
iframe里使用JavaScript控制主页转向的方法
2015/04/03 Javascript
jquery图片切换实例分析
2015/04/15 Javascript
jquery不常用方法汇总
2015/07/26 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
微信小程序 跳转传递数据的实例
2017/07/06 Javascript
轻松理解vue的双向数据绑定问题
2017/10/30 Javascript
使用koa-log4管理nodeJs日志笔记的使用方法
2018/11/30 NodeJs
Vue入门之数量加减运算操作示例
2018/12/11 Javascript
antd组件Upload实现自己上传的实现示例
2018/12/18 Javascript
vue+element tabs选项卡分页效果
2020/06/29 Javascript
vue 防止页面加载时看到花括号的解决操作
2020/11/09 Javascript
[42:32]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第二局
2016/02/27 DOTA
[00:32]2018DOTA2亚洲邀请赛VG出场
2018/04/03 DOTA
Python设计模式之代理模式实例
2014/04/26 Python
Python中比较特别的除法运算和幂运算介绍
2015/04/05 Python
详细解读tornado协程(coroutine)原理
2018/01/15 Python
python3实现字符串的全排列的方法(无重复字符)
2018/07/07 Python
django 环境变量配置过程详解
2019/08/06 Python
如何将你的应用迁移到Python3的三个步骤
2019/12/22 Python
基于pytorch中的Sequential用法说明
2020/06/24 Python
阿玛尼化妆品美国官网:Giorgio Armani Beauty
2017/02/02 全球购物
VICHY薇姿俄罗斯官方网上商店:法国护肤品牌,火山温泉水
2019/11/22 全球购物
澳大利亚购买太阳镜和眼镜网站:Glamoureyes
2020/09/22 全球购物
双立人美国官方商店:ZWILLING集团餐具和炊具
2020/05/07 全球购物
武汉东之林科技有限公司机试
2013/09/17 面试题
《童年》教学反思
2014/02/18 职场文书
同事打架检讨书
2015/05/06 职场文书
Python开发工具Pycharm的安装以及使用步骤总结
2021/06/24 Python
SSM VUE Axios详解
2021/10/05 Vue.js