Day52:range()函数
在 Python 中,range()
是一个内置函数,用于生成一系列数字,通常用于循环结构中。它非常适合用于生成指定范围内的整数序列,并且支持步长控制,常用于 for
循环中。
今天我们将学习如何使用 range()
函数,并了解其常见用法。
1. range()
函数的基本用法
range()
函数可以生成一个整数序列,这些整数可以用来遍历。它的基本语法是:
range(start, stop, step)
start
:序列的起始值,默认为 0。stop
:序列的结束值(不包括该值)。step
:序列中数字之间的步长,默认为 1。
示例:
# 生成从 0 到 4 的数字序列
for i in range(5):
print(i)
输出:
0
1
2
3
4
在上面的例子中,range(5)
表示生成从 0 到 4 的整数序列,默认步长为 1。
2. 使用 start
和 stop
参数
你可以通过指定 start
和 stop
参数来控制生成的序列的范围。
示例:
# 生成从 3 到 7 的数字序列
for i in range(3, 8):
print(i)
输出:
3
4
5
6
7
range(3, 8)
会生成从 3 到 7(不包括 8)的整数序列。
3. 使用 step
参数
通过 step
参数,你可以控制序列中数字之间的间隔。默认为 1,但你可以指定其他值。
示例:
# 生成从 0 到 9 的偶数序列
for i in range(0, 10, 2):
print(i)
输出:
0
2
4
6
8
在这个例子中,range(0, 10, 2)
生成从 0 到 9 的偶数序列,步长为 2。
4. 使用负数步长
range()
函数也支持负数步长,用于生成递减的序列。当 step
为负数时,start
应该大于 stop
,否则序列将为空。
示例:
# 生成从 10 到 1 的倒序序列
for i in range(10, 0, -1):
print(i)
输出:
10
9
8
7
6
5
4
3
2
1
range(10, 0, -1)
生成从 10 到 1 的倒序序列,步长为 -1。
5. range()
返回的是一个迭代器
需要注意的是,range()
返回的是一个迭代器,而不是一个列表。这意味着它不会立即生成所有的数字,而是按需生成数字,这可以节省内存。当你需要将它转换为列表时,可以使用 list()
函数。
示例:
# 将 range 对象转换为列表
numbers = list(range(5))
print(numbers)
输出:
[0, 1, 2, 3, 4]
6. 小结
range()
函数是生成一系列数字的常用工具,常用于循环。- 它可以接受
start
、stop
和step
参数,允许灵活控制数字序列。 range()
返回的是一个可迭代对象,通常在for
循环中使用,但可以转换为列表。
7. 课后练习
练习 1:使用 range()
生成 0 到 9 的数字序列
使用 range()
生成 0 到 9 的数字序列,并将其打印出来。
练习 2:使用 range()
生成 5 到 15 的奇数序列
使用 range()
生成一个从 5 到 15 的奇数序列,步长为 2,并打印每个数字。
练习 3:使用 range()
创建一个倒序序列
使用 range()
创建一个从 20 到 10 的倒序序列,并打印每个数字。
练习 4:将 range()
对象转换为列表
使用 range(0, 20, 5)
创建一个序列,然后将该序列转换为列表并打印出来。
练习 5:使用 range()
计算数字总和
使用 range()
函数计算 1 到 100 的数字总和。