range()是Python中用于生成数字序列的内置函数,常用于循环和序列生成。

基本用法

range(stop)             # 生成0到stop-1的整数序列
range(start, stop)      # 生成start到stop-1的整数序列
range(start, stop, step) # 生成start到stop-1,步长为step的序列

示例

# 生成0-4的数字
for i in range(5):
    print(i)  # 输出: 0 1 2 3 4

# 生成5-9的数字
for i in range(5, 10):
    print(i)  # 输出: 5 6 7 8 9

# 生成0-10之间的偶数
for i in range(0, 11, 2):
    print(i)  # 输出: 0 2 4 6 8 10

# 生成10-1的倒序数字
for i in range(10, 0, -1):
    print(i)  # 输出: 10 9 8 7 6 5 4 3 2 1

重要特性

1、惰性求值:range()不会立即生成所有数字,而是在迭代时逐个生成,节省内存

2、不可变序列:range对象是不可变的序列类型

3、支持索引:可以像列表一样使用索引访问元素
r = range(0, 10, 2)

print(r[2])    # 输出: 4
print(8 in r)  # 输出: True
print(len(r))  # 输出: 5

4、range的区间是左包右不包,就是说左边是闭区间,右边是开区间

与列表转换

可以使用list()将range对象转换为列表:

numbers = list(range(5))
print(numbers)  # 输出: [0, 1, 2, 3, 4]

注意事项

1、range()在Python 3中返回的是range对象,不是列表

2、参数必须是整数,不能是浮点数

3、当step为负数时,start应大于stop

遍历回去列表的元素索引

fruits = ['apple', 'banana', 'cherry']
for i in range(len(fruits)):
    print(i, fruits[i])

输出

0 apple
1 banana
2 cherry
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐