"for" 在范围内步进循环时获取列表的元素或列表的索引

Get the element of list or index of list while "for" looping with step in range

我正在通过以下步骤循环列表:

list_of_names = ["james", "jack", "jill"]

for i in range(1, len(list_of_names) * 6 + 1, 7):
    print(i, i + 6)

现在我想获取元素的索引或迭代次数,以便我可以打印列表的当前元素。 所以我希望输出为

(1, 7, "james")
(8, 14, "jack")
(15, 21, "jill")

(1, 7, 0)
(8, 14, 1)
(15, 21, 2)

我该怎么做?

注意:我正在使用 python2。

逻辑与您的版本不同,但也许您想实现类似的功能?

for i, name in enumerate(list_of_names):
    print(i * 7 + 1, (i + 1) * 7, name)

在您的版本中,随着 list_of_names 的增长,未打印的元素数量将在每个列表长度 n*6 + 1 增加一个,n 为正整数。例如,当长度为 7 时,只会打印前 6 项(即 i 取值 [1, 8, 15, 22, 29, 36],但不是 43),长度为 13 , 只会打印 11 个元素。

如果可能,您应该改用 Python 3。 Python 2 不再维护。