作者:Insist--
个人主页:insist--个人主页
本文专栏:Python专栏
专栏介绍:本专栏为免费专栏,并且会持续更新python基础知识,欢迎各位订阅关注。
前言
在之前的文章我们讲解过 while 循环,除了while循环,Python还提供了 for 循环语句,那两个循环语句有什么区别呢?让我们继续向下探索。
目录
Python中的for循环是一个很常用的控制流程语句,它用于遍历序列(比如列表、字符串、元组等等)或其他可迭代对象。
可迭代对象:在Python中,可迭代对象指得是可以逐个遍历其元素的对象。比如说,列表,元组等等。
while 循环的循环条件是可以自定义的,而for循环是一种轮询机制,是对一批数据进行逐个处理。
Python中的for循环基础语法如下:
- for 临时变量 in 可迭代对象:
-
- # 对每个变量的操作 注意:有四个空格作为缩进
最开始写上关键词 for ,然后写上一个临时变量名(基础语法中的 x),再写上关键词 in ,后面跟上迭代对象。不要忘记最后的冒号哦。
在每次循环中,临时变量将依次被赋值为迭代对象中的每个元素。我们来看一个案例:
在这个案例中,我们使用 Python 中的 fro 循环遍历一个列表并打印出每个元素:
- my_list = [1, 2, 3, 4, 5] # 定义一个列表
- for i in my_list: # 使用for循环
- print(i) # 将每个元素打印出来
在这个例子中,i 是临时变量,my_list是可迭代对象。每次循环,i 都被赋值为 my_list 的一个元素,然后执行打印操作。
输出结果如下:
通过以上案例,我们可直观的看出来,for循环是将列表内的内容依次取出并输出,所以for循环也被成为 遍历循环 。
在Python中,range()是一个内置函数,它生成一个整数序列,通常用在循环结构中。这个函数可以接受一至三个参数,也可以说是有三种语法,如下:
语法一:
range(num)
获取一个从0开始,以1为步长,直到num结束(不包含num)的数字。
例如:
- range(5)
-
- # 获取到的数据是:0, 1, 2, 3, 4。
语法二:
range(num1,num2)
获取一个从num1开始,以1为步长,直到num2结束(不包含num2)的数字。
例如:
- range(3,6)
-
- # 获取到的数据是:3,4,5
语法三:
range(num1, num2,step)
获取一个从num1开始,以step为步长,直到num2结束(不包含num2)的数字。
例如:
range(5,10,2)
range语句一般用在循环结构中,在本文中会体现在 for 循环语句上。
最后来一起看几个 for 循环基础案例:
假设你有一个包含一些数字的列表,并且你想打印出每一个数字,想要实现这个需求非常简单,如下代码
- numbers = [1, 2, 3, 4, 5]
- for number in numbers:
- print(number)
这段代码将会依次打印出数组中的每一个数字,如下图:
假设你有一个列表,你想要删除其中的所有偶数。这个需求我们可以使用for循环和条件语句(if)来实现,如下代码:
- numbers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
- for number in numbers:
- if number % 2 == 0:
- numbers.remove(number)
- print(numbers)
这段代码将会删除列表中的所有偶数,如下图:
假设你有一个字典,你想要打印出其中的所有键值对。这个需求我们可以使用for循环和字典的键和值属性来实现,如下代码:
- person = {"姓名": "小王", "年龄": 18, "性别": "男"}
- for key, value in person.items():
- print(f"{key}: {value}")
这段代码将会打印出字典中的所有键值对,如下图: