循环结构
循环结构
1.1while循环的基础使用
语法格式:
1 | while 条件: |
只要条件(可以是bool或者比较运算)满足,就会无限循环执行
1.2while的嵌套循环
和if的嵌套几乎一模一样,只需要把if的嵌套中的if改成while就是while的嵌套循环了。
注意:此处的嵌套循环同样是基于空格缩进来决定层次关系。
补充内容:
- 默认print语句输出内容会自动换行,所以有时候也会用print语句输出空内容来实现换行。(与c语言不同)
如果想要使用print语句,输出不换行的功能的话,需要这么写:
1 | print("Hello",end='') |
- 制表符\t
效果等同于tab键,可以让多行字符串进行对齐。
示例:
1
2
print("Hello\tWorld")
print("qiemi\t666")
如此输出以后,上下俩行的上下两个字符串就会对齐!
1 | print("Hello\tWorld") |
2.1 for循环基础语法
与while循环的区别:
- while循环的循环条件是自定义的,自行控制循环条件
- for循环是一种“轮询”机制,是对一批内容进行“逐个处理”
语法格式:
1 | for 临时变量 in 待处理数据集(序列): |
- in是一个关键字
- 执行逻辑是从待处理数据集中的数据逐个取出,每个循环就将当前输出赋予这个临时变量,然后执行循环体内的代码。
举个例子:
1 | name = "cheming" |
for循环是无法定义循环条件的,只呢从数据集里面依次取出内容进行处理,理论上来说Python的for循环无法构建无限循环。
同样有空格缩进
2.2 range语句
待处理数据集的严格说法叫做:序列类型。
序列类型指:内容可以一个个依次取出的一种类型。包括:
- 字符串
- 列表
- 元组
- 等
因此for循环语句,本质上是遍历:序列类型。
学习range语句,获得一个简单的数字序列:
语法1:
1 | range(num) |
可以获取一个从0开始,到num结束的数字序列(不含num本身)
比如range(5)取得的数据是: [0,1,2,3,4,]
语法2:
1 | range(num1,num2) |
获得一个从num1开始,到num2结束的数字序列(不包含num2本身)
语法3:
1 | range(num1,num2,step) |
获得一个从num1开始,到num2结束的数字序列(不包含num2本身),并且数字之间的步长以step为准。(step默认是1)
大多数的range序列都是配合for循环使用的
2.3 变量作用域
1 | for i in range(5) |
这样子的写法:
- 规范上:不允许
- 实际上:允许
for循环创建的临时变量的作用范围只在for循环的内部, 也就是作用域就在循环体内,不应该在for循环外部生效(不是不可能)。实际上是可以访问到的,但是在编程的规范上是不允许、不建议这么做。可以在for循环之前就定义好i。
2.4 for循环的嵌套
语法格式和while嵌套循环一样的。
关键点就是注意好空格缩进就行了
3. break和continue关键字
这两个关键字的用法和c语言中一样
continue:中断本次循环,直接进入下一次循环。可用于for和while循环,效果一致。
注意:
- 如果是在嵌套循环中,continue只能在它所在的循环临时中断。也就是只会中断内部循环,而不会中断外部循环。
break: 直接结束循环,可用于for和while循环,效果一致。
注意:
- 在嵌套循环中的用法与continue一样。
- Title: 循环结构
- Author: CM
- Created at: 2023-07-15 17:07:27
- Updated at: 2023-07-15 22:30:25
- Link: https://redefine.ohevan.com/2023/07/15/循环结构/
- License: This work is licensed under CC BY-NC-SA 4.0.