python之enumerate()函数

作者&投稿:鞠窦 (若有异议请与网页底部的电邮联系)
~

在python中,迭代是获取元素本身,而非元素索引,那么,假如针对有序集合,想要获得元素索引,怎么办呢?
方法是,使用enumerate()函数:

例如:['a','b','c','d'],求输出结果为:
0:a
1:b
2:c
3:d

此时可以使用enumerate()函数,实际上enumerate()函数将该list变成了类似:
[(0,'a'),(1,'b'),(2,'c'),(3,'d')]
因此,迭代的实际是一个tuple

如果我们知道每个tuple包含两个元素,可以进一步简写为:

拓展
以上例题,可以用另外一种方法实现
思路:利用zip()和range()结合实现
已知:zip()可将两个list变成一个,如:zip([0,1,2,3],['A','B','C','D']),输出结果为:[(0,'A'),(1,'B'),(2,'C'),(3,'D')]




潮安县15371947137: 如何按行枚举 python enumerate -
刁佳灵博: enumerate()说明enumerate()是python的内置函数 enumerate在字典上是枚举、列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值 enumerate多...

潮安县15371947137: python 怎么使用enumerate -
刁佳灵博: 先出一个题目:1.有一 list= [1, 2, 3, 4, 5, 6] 请打印输出:0, 1 1, 2 2, 3 3, 4 4, 5 5, 6 打印输出, 2.将 list 倒序成 [6, 5, 4, 3, 2, 1] 3.将a 中的偶数挑出 *2 ,结果为 [4, 8, 12] !

潮安县15371947137: python enumerate跟直接in有什么区别 -
刁佳灵博: 两个区别很明显: https://docs.python.org/2/library/functions.html#enumerate1 2 3 4 5defenumerate(sequence, start=0):n =startforelem insequence:yieldn, elemn +=1 首先看enumerate返回的是个iterator in的话参考文档:(下面摘录)...

潮安县15371947137: python怎么获取列表元素的索引 -
刁佳灵博: #用enumerate函数,最好不要用index ,因为列表有相同的元素的时候,index就傻冒了 for i,j in enumerate(('a','b','c')): print i,j0 a1 b2 c

潮安县15371947137: python 字典怎么使用enumerate -
刁佳灵博: 更改的是list元素,name变量并没有改变,你print的是name,可以print names[index]

潮安县15371947137: python当中的 迭代器 如何使用? -
刁佳灵博: list = [1,2,3,4,5,6] for item in list: print item

潮安县15371947137: python当中的 迭代器 如何使用?举例说明,谢谢 -
刁佳灵博: 你说的是enumerate吧?举个最简单的例子:listValue = ["a", "b", "c"] for index,strValue in enumerate(listValue): print index,"is ",strValue 结果是:0 is a1 is b2 is c

潮安县15371947137: 怎样用python做一个两个数求最大公因数的程序? -
刁佳灵博: m=int(input('请输入第一复个数制字:2113')) n=int(input( '请输入第二个数字:'))a=m b=n if(a>b):t= aa=bt=b while (a!=0):r = b% ab= aa=rmax=bmin=m*n//max print ( '最大公5261约数是:4102',max) print ( '最小公1653倍数是:',min)

潮安县15371947137: python list找出一个元素的位置(重复元素怎么分别找出位置) -
刁佳灵博:[答案] def unique_index(L,e): \x09 return [j for (i,j) in enumerate(L) if i == e] 这样就可以了.enumerate是将可迭代的对象与对应的索引一起进行迭代的函数,其实蛮实用的.

潮安县15371947137: python 中如何判断是否为for循环最后一个元素 -
刁佳灵博: 判断是否为最后一个元素,用enumerate来获得下标 for index, i in enumerate(range(10)): if index == len(range(10)) - 1: print 'last item:', i2.也可以自己做个计数器 n = 0 length = len(range(10)) for i in range(10): n += 1 if n == length: print 'last item:', i3. 就单纯解决你这个字符串拼接问题,这么做比较好"-".join([ str(i) for i in range(10)])

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网