介绍
在本实验中,你将学习如何在 Python 中使用 for 循环语句和 range() 函数。for 循环语句允许你遍历一系列元素,例如列表或字符串。range() 是一个内置函数,它返回一个数字序列,默认从 0 开始,默认每次递增 1,并在指定的数字处结束。
学习目标
for循环语句range()函数enumerate()函数zip()函数
在本实验中,你将学习如何在 Python 中使用 for 循环语句和 range() 函数。for 循环语句允许你遍历一系列元素,例如列表或字符串。range() 是一个内置函数,它返回一个数字序列,默认从 0 开始,默认每次递增 1,并在指定的数字处结束。
for 循环语句range() 函数enumerate() 函数zip() 函数for 循环是一种控制流语句,允许你遍历一系列元素。for 循环的语法如下:
for variable in sequence:
statements
其中,sequence 是一个元素序列(例如列表、元组或字符串),而 variable 是一个变量,它会依次取序列中的每个值。循环内的 statements 会针对序列中的每个值执行。
打开一个新的 Python 解释器:
python3
以下是一个简单的 for 循环示例,它遍历一个整数列表并打印出每个值:
numbers = [1, 2, 3, 4, 5]
for number in numbers:
print(number)
遍历字符串的示例:
for char in 'Hello':
print(char)
range() 是 Python 中的一个内置函数,用于生成一个数字序列。range() 函数的语法如下:
range(start, stop, step)
其中,start 是序列的起始数字(默认值为 0),stop 是序列的结束数字(不包含在序列中),step 是序列中每个数字之间的增量(默认值为 1)。
你可以在 for 循环中使用 range() 函数来遍历一个数字序列。例如:
for i in range(5):
print(i)
你也可以为 range() 函数指定 start 和 stop 值:
for i in range(2, 5):
print(i)
你甚至可以指定 step 值:
for i in range(2, 10, 2):
print(i)
你也可以使用多个 for 循环来遍历嵌套的序列。例如:
for i in range(1, 3):
for j in range(1, 4):
print(f'i: {i}, j: {j}')
现在轮到你练习使用 for 循环语句和 range() 函数了。编写一个程序,打印以下模式:
*
**
***
****
*****
一些提示:
你的程序应该使用两个 for 循环,一个嵌套在另一个内部。外层循环应遍历行数,内层循环应遍历列数。
为了完成这个练习,你需要使用 print() 函数来打印星号。你可以使用 range() 函数来控制循环的迭代次数。
enumerate 函数接受一个可迭代对象(例如列表)作为输入,并返回一个生成元组的迭代器,每个元组包含元素的 index(索引)和 value(值)。在下面的示例中,我们使用解包操作符(index, fruit)将每个元组的索引和值分别赋值给变量 index 和 fruit。
## 在 Python 中使用 enumerate 函数的 for 循环示例
## 用于迭代的示例列表
fruits = ['apple', 'banana', 'cherry']
## 使用 for 循环和 enumerate 函数遍历列表
for index, fruit in enumerate(fruits):
print(f"Index: {index}, Fruit: {fruit}")
## 输出:
## Index: 0, Fruit: apple
## Index: 1, Fruit: banana
## Index: 2, Fruit: cherry
在上面的示例中,我们定义了一个包含元素 apple、banana 和 cherry 的列表 fruits。
然后,我们使用 for 循环遍历 fruits 列表,并使用 enumerate 函数获取列表中每个元素的索引和值。在循环内部,我们使用字符串格式化打印出 index 和 fruit。默认情况下,enumerate 函数从 0 开始计数,但你可以使用可选参数 start 来指定不同的起始计数点。
当你需要同时遍历多个列表或其他可迭代对象,或者希望将多个可迭代对象组合在一起时,zip() 函数会非常有用。
## 在 Python 中使用 zip() 函数的 for 循环示例
## 用于迭代的示例列表
fruits = ['apple', 'banana', 'cherry']
prices = [1.2, 3.5, 2.5]
## 使用 for 循环和 zip 函数遍历列表
for fruit, price in zip(fruits, prices):
print(f"Fruit: {fruit}, Price: ${price}")
## 输出:
## Fruit: apple, Price: $1.2
## Fruit: banana, Price: $3.5
## Fruit: cherry, Price: $2.5
在上面的示例中,我们定义了两个列表 fruits 和 prices,分别包含元素 apple、banana、cherry 和 1.2、3.5、2.5。
然后,我们使用 for 循环和 zip() 函数遍历这两个列表中的元素。zip() 函数接受多个可迭代对象作为输入,并返回一个生成元组的迭代器,每个元组包含输入可迭代对象中对应位置的元素。在上面的示例中,我们使用解包操作符(fruit, price)将每个元组的元素分别赋值给变量 fruit 和 price。在循环内部,我们使用字符串格式化打印出水果名称和价格。
如果输入的可迭代对象长度不一致,zip() 函数会在最短的可迭代对象结束时停止。
在本实验中,你学习了如何使用 Python 的 for 循环语句和 range() 函数来遍历一系列元素。你掌握了 for 循环和 range() 函数的语法,并通过示例了解了如何使用它们遍历列表、字符串、元组和数字序列。你还学习了如何使用嵌套 for 循环来遍历嵌套序列。
现在你已经掌握了 for 循环和 range() 函数的基础知识,可以使用这些工具来完成诸如数据处理、生成输出等任务。