让python像C#,java一样取下标,Python enumerate() 函数

 Lan   2020-05-29 18:52   226 人阅读  0 条评论

今天,在某Python交流群,看到这样一串代码image.png然后我看到了for循环,然后后面是enumerate,瞬间很多问号,这是个什么东西,百度会告诉我答案,然后就在菜鸟教程上面看到了image.png

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

python 2.3. 以上版本可用,2.6 添加 start 参数。

好吧,不仔细看官方文档的反面教材+1,之前还一直傻乎乎的外面弄一个index,然后在循环里面index+=1,还一边吐槽,python怎么连个下标都要自己取。

image.png

以下内容转自菜鸟教程:Python enumerate() 函数

实例:

数据:

>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
>>> list(enumerate(seasons, start=1))       # 下标从 1 开始
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

普通的for循环:

>>>i = 0
>>> seq = ['one', 'two', 'three']
>>> for element in seq:
...     print i, seq[i]
...     i +=1
... 
0 one
1 two
2 three

for 循环使用 enumerate:

>>>seq = ['one', 'two', 'three']
>>> for i, element in enumerate(seq):
...     print i, element
... 
0 one
1 two
2 three


本文地址:https://www.lanol.cn/post/251.html
版权声明:本文为原创文章,版权归 Lan 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

还没有留言,还不快点抢沙发?