while循环使用python列表

时间:2016-11-22 17:55:24

标签: python list

my_list=[1,2,3,4,5]
i = 10
while i < 10:
   print i ,my_list
   i = i +1

我想要的输出:

1,1
2,2
3,3
4,4
5,5
6,1
7,2
8,3
9,4
10,5

我怎样才能做到这一点?

4 个答案:

答案 0 :(得分:3)

my_list=[1,2,3,4,5]
for index, item in enumerate(my_list*2, start = 1):
    print index,item

答案 1 :(得分:1)

您的任务是itertools.cycle为(来自Python的标准库)构建的:

In [5]: from itertools import cycle

In [6]: for i, j in zip(xrange(1, 11), cycle(my_list)):
   ...:     print i, j
   ...:
1 1
2 2
3 3
4 4
5 5
6 1
7 2
8 3
9 4
10 5

In [7]: for i, j in zip(xrange(12), cycle(my_list)):
   ...:     print i, j
   ...:
0 1
1 2
2 3
3 4
4 5
5 1
6 2
7 3
8 4
9 5
10 1
11 2

答案 2 :(得分:0)

for x in range(10):
    print(x+1,list[x%len(list)])

此代码未选中,您可能需要稍微修改一下。

答案 3 :(得分:0)

您可以尝试这种更简单的方法:

    my_list = [1,2,3,4,5]
    newList = (enumerate(my_list*2))
    for num in newList:
        print(num)

输出:

(0, 1)
(1, 2)
(2, 3)
(3, 4)
(4, 5)
(5, 1)
(6, 2)
(7, 3)
(8, 4)
(9, 5)