使用for循环中的迭代次数而不是list的元素

时间:2015-03-22 13:07:52

标签: python for-loop

我不确定之前是否曾经问过这个问题,如果有问题我会道歉,但我有以下简单的代码:

for s in lst_times:
        #print(s)
        f.write( str() + " " + str(s)+ " " + "\n" )

在这个循环中,有没有办法在列表lst_times中使用s的实际整数值而不是索引为s的元素?

感谢您的时间,

3 个答案:

答案 0 :(得分:6)

查看enumerate功能

for i, s in enumerate(lst_times):
    #print(s)
    f.write( str() + " " + str(s)+ " " + "\n" )

答案 1 :(得分:3)

两种方式:

for i in range(len(lst_times)):
    f.write(...

for i, s in enumerate(lst_times):
    f.write(...

答案 2 :(得分:0)

除了range之外,您还可以使用xrange来懒惰地评估索引。 xrange将返回一个迭代器对象,并且一次只在一个内存中保留一个数字(与range相反,这将保留一个数字列表)。

for i in xrange(len(lst_times)):
    f.write(...)
    # lst_times[i] will give you `ith` element.

P.S。 - xrange仅在python 2.x中。 python 3的range就像python 2.x的xrange

一样