文档章节

Python enumerate 用法

掉包虾
 掉包虾
发布于 2016/04/09 09:17
字数 208
阅读 103
收藏 1

List 迭代时使用索引

使用索引,标准(一般)的做法

array = [1, 2, 3, 4, 5] 

for i in range(len(array)):
   print(array[i],end=' ')
1 2 3 4 5

简单,干净的用法 ----使用enumerate

  • enumerate(iterablestart=0)

  • Return an enumerate object. 

  • iterable must be a sequence, an iterator, or some other object which supports iteration

  • start:改变索引 初始化位置(以下有例子)

实例:

>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
>>> list(enumerate(seasons, start=1))
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

完整的用法:

array = [1, 2, 3, 4, 5]  # or whatever

for i, e in enumerate(array):
    print(i,e)
    0 1    
    1 2
    2 3
    3 4
    4 5

有start 用法

for i, e in enumerate(array,start=2):
    print(i,e)
    2 1    
    3 2
    4 3
    5 4
    6 5

Equivalent to:

def enumerate(sequence, start=0):
    n = start
    for elem in sequence:
        yield n, elem
        n += 1


© 著作权归作者所有

上一篇: Python 小技巧
下一篇: python 之时间问题
掉包虾
粉丝 2
博文 29
码字总数 6635
作品 0
程序员
私信 提问
Python开发(基础):常用函数

enumerate 函数定义: def enumerate(sequence, start=0): n = start for elem in sequence: yield n, elem n += 1 函数示例: >>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']>>> li......

wbb827
2018/07/03
0
0
Python札记13_内建函数zip()、enumerate()

Python中有很多的内建函数,zip()、enumerate()等 zip zip用于合并两个对象中的元素,合并的两个元素类型必须是一致的 如果长度不一致,采用长度小的 其参数必须是可迭代对象。 一个例题:通...

皮皮大
06/23
0
0
【收藏】Python实用技巧-成为Pythoner必经之路

前言 本文主要记录 Python 中一些常用技巧,所描述的是告诉你怎么写才是更好? 如果你并不熟悉Python语法,希望你能在下面代码片段中看到Python的简单、优雅; 如果你象我这样,对 Python 有兴...

燕莳泗
2013/03/24
408
0
python有趣用法汇总(持续更新)

使用python过程中经常会不经意间遇到非常有趣的用法,于是特意搜集了一些 有趣的用法 1.for-else用法 循环正常结束则执行else语句。一般用于循环找符合条件的元素,如果找到则调出循环,不会...

p柯西
2018/06/05
41
0
Python札记51_Python高阶函数(必看)

在这幅思维导图中主要是介绍了中几个比较重要的高阶函数及其用法,还有文件读取的三种方式,希望对学习的朋友有所帮助。 函数 range 排序 反转 heapq 堆 deque 双端队列 zip enumerate lamd...

皮皮大
07/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

3_数组

3_数组

行者终成事
今天
7
0
经典系统设计面试题解析:如何设计TinyURL(二)

原文链接:https://www.educative.io/courses/grokking-the-system-design-interview/m2ygV4E81AR 编者注:本文以一道经典的系统设计面试题:《如何设计TinyURL》的参考答案和解析为例,帮助...

APEMESH
今天
7
0
使用logstash同步MySQL数据到ES

概述   在生成业务常有将MySQL数据同步到ES的需求,如果需要很高的定制化,往往需要开发同步程序用于处理数据。但没有特殊业务需求,官方提供的logstash就很有优势了。   在使用logstas...

zxiaofan666
今天
10
0
X-MSG-IM-分布式信令跟踪能力

经过一周多的鏖战, X-MSG-IM的分布式信令跟踪能力已基本具备, 特点是: 实时. 只有要RX/TX就会实时产生信令跟踪事件, 先入kafka, 再入influxdb待查. 同时提供实时sub/pub接口. 完备. 可以完整...

dev5
今天
7
0
OpenJDK之CyclicBarrier

OpenJDK8,本人看的是openJDK。以前就看过,只是经常忘记,所以记录下 图1 CyclicBarrier是Doug Lea在JDK1.5中引入的,作用就不详细描述了,主要有如下俩个方法使用: await()方法,如果当前线...

克虏伯
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部