【问题标题】:How to combine elements of a list in threes如何将列表中的元素组合成三个
【发布时间】:2017-11-03 17:33:21
【问题描述】:

我可以像这样组合列表的每两个元素:

colors=['green','yellow','red','green','yellow','red']
colors2=[x+y for x,y in zip(colors[0::2],colors[1::2])]
colors2
Out: ['greenyellow','redgreen','yellowed']

但是,我无法组合列表的每三个元素:

colors3=
[x+y+z for x,y,z in zip(colors[0::3],colors[1::4],colors[2::5])]
colors3
Out: ['greenyellowred']

我的切片未对齐的其他三个在哪里?

【问题讨论】:

    标签: python zip list-comprehension slice


    【解决方案1】:

    这段代码完成了调查和反复试验。双冒号左边的整数是低位,右边是步幅。如果您考虑一下并了解 zip 的工作原理,这很有意义。

    color3=[x+y+z for x,y,z in zip(color[0::3],color[1::3],color[2::3])]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-21
      相关资源
      最近更新 更多