我熟悉使用enumerate():
>>> seq_flat = ('A', 'B', 'C')
>>> for num, entry in enumerate(seq_flat):
        print num, entry
0 A
1 B
2 C
我希望能够为嵌套列表做同样的事情:
>>> seq_nested = (('A', 'Apple'), ('B', 'Boat'), ('C', 'Cat'))
我可以打开包装:
>>> for letter, word in seq_nested:
        print letter, word
A Apple
B Boat
C Cat
我应该如何解压缩以获得以下信息?
0 A Apple
1 B Boat
2 C Cat
我知道的唯一方法是使用计数器/增量器,据我所知,这是非Pythonic.有更优雅的方式吗?
如果我只想在循环中使用索引,我应该更好地range/xrange结合使用该函数len() 
a = [1,2,3]
for i in xrange(len(a)):
    print i 
还是enumerate?即使我根本不使用p?
for i,p in enumerate(a):
    print i    
我现在有一个非常简单的脚本,它使用以下方法计算文本文件中的行enumerate():
i = 0
f = open("C:/Users/guest/Desktop/file.log", "r")
for i, line in enumerate(f):
      pass
print i + 1
f.close()
这需要大约3分半钟才能完成大约3000万行的15GB日志文件.如果我能在两分钟或更短的时间内得到它,那将是很好的,因为这些是每日日志,我们想要进行每月分析,因此代码必须处理30个~15GB的日志 - 可能超过一个半小时,我们希望尽量减少服务器上的时间和内存负载.
我也会接受一个很好的近似/估计方法,但它需要大约4 sig fig准确...
谢谢!
def enumerate(arr):
    (0..arr.length - 1).to_a.zip(arr)
内置的东西是为了什么?它不需要让它的成员不可变,它只需要在标准库中.我不想成为继承Array类的人,为项目添加Python功能.
它在Ruby中有不同的名称吗?
%w(a b c).enumerate
=> [[0, "a"], [1, "b"], [2, "c"], [3, "d"]] 
我试图扭转所给出的索引,enumerate同时保留列举的列表的原始顺序.
假设我有以下内容:
>> range(5)
[0, 1, 2, 3, 4]
如果我列举这个,我会得到以下内容:
>> list(enumerate(range(5)))
[(0, 0), (1, 1), (2, 2), (3, 3), (4, 4)]
但是我想要反转枚举提供的索引,以便得到:
[(4, 0), (3, 1), (2, 2), (1, 3), (0, 4)]
到目前为止,我有以下代码:
reversed(list(enumerate(reversed(range(5)))))
我只是想知道是否有更简洁的方法来做到这一点?
我知道我不应该在循环中修改列表,但出于好奇,我想知道为什么以下两个示例之间的迭代次数不同.
例1:
x = [1, 2, 3, 4, 5]
for i, s in enumerate(x):
    del x[0]
    print(i, s, x)
例2:
x = [1,2,3,4,5]
for i, s in enumerate(x):
    x = [1]
    print(i, s, x)
示例1仅运行3次,因为何时i==3,len(x)==2.
尽管示例2运行了5次len(x)==1.
所以我的问题是,是否在循环开始时enumerate生成完整的(index, value)对列表并迭代它?或者它们是在循环的每次迭代中生成的?
我想跳过Latex枚举环境中的编号来生成列表,如下所示:
(1)第1项..
(2)第2项..
(5)第5项..
(6)第6项..
等等.
Latex代码是自动生成的,所以理想情况下,我想在环境中插入"silent"\ item-s,以便它们跟踪编号,但输出中不会出现任何内容.但是,如果我只是添加当前的空\项目,我会得到如下列表:
(1)第1项
(2)第2项
(3)
(4)
(5)第5项
(6)第6项
虽然空\ item-s方法是最理想的,但我非常欢迎任何其他方法来实现跳数.
提前致谢!
在Python中我可以写:
for i, element in enumerate(my_list):
    print i          # the index, starting from 0
    print element    # the list-element
我怎么能在Kotlin写这个?
如何使Python的enumerate函数从较大的数字枚举到较小的数字(降序,递减,倒计时)?或者一般来说,如何使用不同的步进增量/减量enumerate?
例如,应用于list的此函数['a', 'b', 'c']具有起始值10和步骤-2,将生成迭代器[(10, 'a'), (8, 'b'), (6, 'c')].
我想为类似于excel工作表的应用程序制作一个按字母顺序排列的列表.
用户将输入多个单元格,我想生成列表.例如,用户需要54个单元格.然后我会生成
'a','b','c',...,'z','aa','ab','ac',...,'az','ba','bb'
我可以从[ref]生成列表
 from string import ascii_lowercase
 L = list(ascii_lowercase) 
我如何将它拼接在一起?这里有一个类似的PHP问题.有人有python等价吗?