『无为则无心』Python基础 — 15、Python流程控制语句(for循环语句)
提示:上一篇文章中详细的说明了
while
循环语句,本篇文章来说说Python中的for
循环语句。
1、for
循环语法
# 注:临时变量是程序员自定义的临时变量。
for 临时变量 in 序列:
重复执行的代码1
重复执行的代码2
......
for
循环的代码块会执行多次,序列中有几个元素就会执行几次,
每执行一次就会将序列中的一个元素赋值给临时变量,
所以我们可以通过临时变量,来获取列表中的每个元素。
快速体验:
"""
1. 准备一个数据序列
2. 进行for循环
"""
str1 = 'Hello Pyhton'
for i in str1:
print(i)
执行结果:
2、for
循环中的break
和continue
for
循环中的break
和continue
和while
循环中的用法一样。
下面我们直接练习来说明。
(1)break
说明
str1 = 'Hello Pyhton'
for i in str1:
if i == ' ': # 空格
print('遇到空格不打印')
break
print(i)
执行结果:
(2)continue
说明
str1 = 'Hello Pyhton'
for i in str1:
if i == ' ': # 空格
print('遇到空格不打印')
continue
print(i)
执行结果:
3、循环+else结构
循环(while
循环和for
循环)可以和else
配合使用,else
下方缩进的代码指的是,当循环正常结束之后要执行的代码。
(1)while...else
1)描述:
需求:女朋友生气了,要惩罚:连续说5遍“媳妇儿,我错了”,如果道歉正常完毕女朋友就原谅我了,这个程序怎么写?
i = 1
while i <= 5:
print('媳妇儿,我错了')
i += 1
print('媳妇儿原谅我了...')
思考: 这个
是的,能够执行。
但是这里想说的是,只有惩罚的循环正常结束了,才能说出原谅你了。如果你的惩罚没有正常结束,是不能够被原谅的。
所以像这种惩罚后被原谅,这两部分是有一种依赖关系的,这个时候就不能像上边这样写了,就需要使用
while...else
格式的循环语句来完成编码。
2)语法:
while 条件表达式:
条件成立重复执行的代码
else:
循环正常结束之后要执行的代码
3)示例:
"""
1. 书写道歉的循环。
2. 循环正常结束要执行的代码写在else中。
"""
i = 1
while i <= 5:
print('媳妇儿,我错了')
i += 1
else:
print('媳妇原谅我了,真开心,哈哈哈哈')
"""
输出结果:
媳妇儿,我错了
媳妇儿,我错了
媳妇儿,我错了
媳妇儿,我错了
媳妇儿,我错了
媳妇原谅我了,真开心,哈哈哈哈
"""
(2)while...else
退出循环的方式
需求:女朋友生气,要求道歉5遍:媳妇儿,我错了。道歉到第三遍的时候,媳妇埋怨这一遍说的不真诚,是不是就是要退出循环了?这个退出有两种可能性:
- 更生气,不打算原谅,也不需要道歉了,程序如何书写?
- 只一遍不真诚,可以忍受,继续下一遍道歉,程序如何书写?
1)break
方式
i = 1
while i <= 5:
if i == 3:
print('这遍说的不真诚,别说了!')
break
print('媳妇儿,我错了')
i += 1
else:
print('媳妇原谅我了,真开心,哈哈哈哈')
执行结果:
总结:所谓
else
指的是循环正常结束之后要执行的代码,即如果是break
终止循环的情况(代表非正常情况),else
下方缩进的代码将不执行。
2)continue
方式
i = 1
while i <= 5:
if i == 3:
print('这遍说的不真诚,给我注意点!')
i += 1
continue
print('媳妇儿,我错了,')
i += 1
else:
print('媳妇原谅我了,真开心,哈哈哈哈')
执行结果:
总结:因为
continue
是退出当前一次循环,继续下一次循环,所以该循环在continue
控制下是可以正常结束的,当循环结束后,则执行了else
缩进的代码。
(3)for...else
和while...else
的用法一样的。
1) 语法:
for 临时变量 in 序列:
重复执行的代码
...
else:
循环正常结束之后要执行的代码
所谓
else
指的是循环正常结束之后要执行的代码,即如果是break
终止循环的情况,else
下方缩进的代码将不执行。
2)示例:
str1 = 'Python'
for i in str1:
print(i)
else:
print('循环正常结束之后执行的代码')
(4)for...else
退出循环的方式
1)break
终止循环
str1 = 'Python'
for i in str1:
if i == 'h':
print('遇到h不打印')
break
print(i)
else:
print('循环正常结束之后执行的代码')
执行结果:
没有执行
else
缩进的代码。
2)continue
终止循环
str1 = 'Python'
for i in str1:
if i == 'h':
print('遇到h不打印')
continue
print(i)
else:
print('循环正常结束之后执行的代码')
执行结果:
因为
continue
是退出当前一次循环,继续下一次循环,所以该循环在continue
控制下是可以正常结束的,当循环结束后,则执行了else
缩进的代码。
『无为则无心』Python基础 — 15、Python流程控制语句(for循环语句)的更多相关文章
- 『无为则无心』Python基础 — 12、Python运算符详细介绍
目录 1.表达式介绍 2.运算符 (1)运算符的分类 (2)算数运算符 (3)赋值运算符 (4)复合赋值运算符 (5)比较运算符 3.逻辑运算符 拓展1:数字之间的逻辑运算 拓展2:Python中逻辑 ...
- 『无为则无心』Python基础 — 14、Python流程控制语句(while循环语句)
目录 1.什么是循环结构 2.while循环 (1)while循环的语法 (2)while循环的应用 3.while语句的死循环 4.break和continue 5.while循环嵌套 (1)应用场 ...
- 『无为则无心』Python基础 — 4、Python代码常用调试工具
目录 1.Python的交互模式 2.IDLE工具使用说明 3.Sublime3工具的安装与配置 (1)Sublime3的安装 (2)Sublime3的配置 4.使用Sublime编写并调试Pytho ...
- 『无为则无心』Python基础 — 6、Python的注释
目录 1.注释的作用 2.注释的分类 单行注释 多行注释 3.注释的注意事项 4.什么时候需要使用注释 5.总结 提示:完成了前面的准备工作,之后的文章开始介绍Python的基本语法了. Python ...
- 『无为则无心』Python基础 — 7、Python的变量
目录 1.变量的定义 2.Python变量说明 3.Python中定义变量 (1)定义语法 (2)标识符定义规则 (3)内置关键字 (4)标识符命名习惯 4.使用变量 1.变量的定义 程序中,数据都是 ...
- 『无为则无心』Python基础 — 10、Python字符串的格式化输出
目录 1.什么是格式化输出 2.Python格式化输出的五种方式 方式一:字符串之间用+号拼接 方式二:print()函数可同时输出多个字符串 方式三:占位符方式 方式四:f格式化方式(推荐) 方式五 ...
- 『无为则无心』Python基础 — 13、Python流程控制语句(条件语句)
目录 1.流程控制基本概念 2.选择结构(条件语句) (1)条件语句概念 (2)if语句语法 (3)if...else...语句 (4)多重判断 (5)if语句嵌套 3.应用:猜拳游戏 4.三元运算符 ...
- 『无为则无心』Python序列 — 24、Python序列的推导式
目录 1.列表推导式 (1)快速体验 (2)带if的列表推导式 (3)多个for循环实现列表推导式 2.字典推导式 (1)创建一个字典 (2)将两个列表合并为一个字典 (3)提取字典中目标数据 3.集 ...
- 『无为则无心』Python函数 — 29、Python变量和参数传递
目录 1.Python的变量 (1)Python变量不能独立存在 (2)变量是内存中数据的引用 (3)注意点 2.了解变量的引用 3.Python的参数传递(重点) (1)示例 (2)结论 (3)总结 ...
随机推荐
- MSSQL·查看DB中所有表及列的相关信息
阅文时长 | 0.6分钟 字数统计 | 1013.6字符 主要内容 | 1.引言&背景 2.声明与参考资料 『MSSQL·查看DB中所有表及列的相关信息』 编写人 | SCscHero 编写时 ...
- 深入探索Android热修复技术原理读书笔记 —— so库热修复技术
热修复系列文章: 深入探索Android热修复技术原理读书笔记 -- 热修复技术介绍 深入探索Android热修复技术原理读书笔记 -- 代码热修复技术 深入探索Android热修复技术原理读书笔记 ...
- [OS] 操作系统课程(五)
系统启动 启动过程 CPU加电稳定后从0XFFFF0读取第一条指令 BIOS 固化到计算机主板上的程序 包括系统设置.自检程序和系统自启动程序 系统加电后读BIOS 加电自检POST,内存.显卡等关键 ...
- canal 环境搭建 canal 与kafka通信(三)
canal 占用了生产者 .net core端 使用消费者获取canal 消息 安装 Confluent.Kafka demo使用 1.3.0 public static void Consumer ...
- 强哥PHP面向对象学习笔记
面向对象编程OOP目标:重用性.灵活性.扩展性特点:封装.继承.多态 类的书写方法:class PersionName{} 特征:属性.其实就是变量行为:方法.其实就是函数 1.实例化对象2.对象中成 ...
- 大文件查找 du -ahx . | sort -rh | head -10
# cd /root@test-W330-C30:/# du -ahx . | sort -rh | head -58.2G .5.6G ./usr3.3G ./usr/share1.9G ./usr ...
- linux中cat、more、less命令区别详解##less 最合适最好用,和vim一样好用
linux中cat.more.less命令区别详解 caoxinyiyi关注 0.0362018.07.02 15:46:17字数 641阅读 516 linux中命令cat.more.less均可用 ...
- CAP 与数据一致性
分布式系统的假设是,工作在网络环境下的系统拥有多个节点,而这些节点本身会由于各种原因而变得不稳定.这其中就有一个非常重要的概念--CAP原理.这个原理指导着大多数分布式系统的设计过程,CAP原理大致是 ...
- 在 Ubuntu 上安装 .NET SDK 或 .NET 运行时
在wsl Ubuntu 20.04上面安装dotnet链接 https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-ubuntu Ubun ...
- 让ThreadPoolExecutor的workQueue占满时自动阻塞submit()方法
public class BlockingSubmitExecutor { private ExecutorService executor = new ThreadPoolExecutor(2, 2 ...