【问题标题】:Iterate over two list of different sizes in python在python中迭代两个不同大小的列表
【发布时间】:2018-07-17 15:16:54
【问题描述】:
Value = [1,2,3,4,5,6]
content = ['a','b','c','d']

for a,b in itertools.zip_longest(Value , content):
   print(a,b)

我使用上述代码得到的输出如下:

1 a
2 b
3 c
4 d
5 None
6 None

我正在寻找的是:

1 a
2 b
3 c
4 d
5 a
6 b

基本上,一旦一个列表用完,它应该从开始重新获取值。如果有人可以提供帮助将意味着很多

【问题讨论】:

    标签: python python-3.x itertools


    【解决方案1】:

    您可以将itertools.cyclezip 一起使用:

    import itertools
    Value = [1,2,3,4,5,6]
    content = ['a','b','c','d']
    
    for a,b in zip(Value , itertools.cycle(content)):
       print(a,b)
    

    这个输出:

    1 a
    2 b
    3 c
    4 d
    5 a
    6 b
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-28
      • 2016-08-02
      • 1970-01-01
      • 2016-07-11
      • 1970-01-01
      • 2019-11-28
      • 2014-02-15
      相关资源
      最近更新 更多