【问题标题】:How to unpack lists in 2 for loops?如何解压缩 2 个 for 循环中的列表?
【发布时间】:2018-02-11 04:30:35
【问题描述】:

我正在尝试在 2 个 for 循环中解压缩 2 个列表而不重复该项目。例如:

list1 = re.compile('postHeader.+?href="(.+?)".+?>(.+?)<.+?src=.+? src="(.+?)"', re.DOTALL).findall(html)
list2 = re.findall('<p>Links.(+?)</p>', html)
    for item1, item2, item3 in list1:
        for item4 in list2:
            print item1, item2, item3, item4

我得到的结果是: Item1, item2, item3, item4 then item1 (previous), item2 (previous), item3 (previous), item4 (changes) then item1 (previous)... Item1 重复 4 次,而 item4 按顺序连续变化,这就是我想要。如何让所有内容同步?

【问题讨论】:

  • 你能解释一下要达到的目标吗?
  • 您正在寻找zip

标签: python regex list for-loop


【解决方案1】:

使用内置的zip 函数。

>>> list1 = [(10, 11, 12), (13, 14, 15)]
>>> list2 = [20, 21]
>>> 
>>> for (item1, item2, item3), item4 in zip(list1, list2):
...     print item1, item2, item3, item4
... 
10 11 12 20
13 14 15 21

【讨论】:

  • @Dzrte4gle 没问题。请考虑接受答案。
猜你喜欢
  • 1970-01-01
  • 2019-02-04
  • 1970-01-01
  • 1970-01-01
  • 2021-02-23
  • 2020-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多