range与enumerate的异同与使用

异同

1、range 函数适合用来迭代一系列整数,常用于循环中迭代次数的控制。

2、enumerate 函数常用于同时获取结构性可迭代对象(如列表、字符串)的索引和元素值,返回一个包含 (索引, 元素) 的迭代器。

        enumerate函数可以用简洁的代码迭代iterator,而且可以指出当前这轮循环的序号。不要先通过range指定下标的取值范围,然后用下标去访问序列,而是应该直接用enumerate函数迭代。可以通过enumerate的第二个参数指定起始序号(默认为0)​。

使用

range

range(stop)  # 从 0 开始,到 stop-1 结束
range(start, stop)  # 从 start 开始,到 stop-1 结束
range(start, stop, step)  # 从 start 开始,步长为 step,到 stop-1 结束
# 生成 0-4 的序列
for i in range(5):
    print(i)  # 输出:0 1 2 3 4

# 生成 2-8(不包含8)的序列,步长为2
for i in range(2, 8, 2):
    print(i)  # 输出:2 4 6

enumerate

enumerate(iterable, start=0)  # start 为索引起始值,默认为 0
fruits = ['apple', 'banana', 'orange']

# 默认索引从0开始
for index, fruit in enumerate(fruits):
    print(index, fruit)
# 输出:
0 apple
1 banana
2 orange
fruits = ['apple', 'banana', 'orange']

# 索引从1开始
for index, fruit in enumerate(fruits, start=1):
    print(index, fruit)
# 输出:
1 apple
2 banana
3 orange

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值