【问题标题】:the smart way to recombine these two lists in python在 python 中重新组合这两个列表的聪明方法
【发布时间】:2025-12-13 19:05:03
【问题描述】:

我在 python 中有以下列表,我想将它们重新组合成字典/列表:

names = ['banana','grapefruit','apple']
colors = ['yellow','pink','green']

fruits = [
{'name':'banana','color':'yellow'}, 
{'name':'grapefruit','color':'pink'},
{'name':'apple','color':'green'}
]

最好的方法是什么?我现在正忙着写循环。

请帮忙! :)

【问题讨论】:

  • 如果我想为 n 个“水果属性”执行此操作,例如。如果fruit_attributes = ['name','color','taste',...],那么实现这一目标的最佳方法是什么?
  • 您应该编辑问题(如果可以,现在找不到所需的声誉)。另外,值的格式是什么? [[name1, name2], [color1, color2]][[name1, color1], [name2, color2]] 或完全不同的东西?

标签: python list dictionary


【解决方案1】:
fruits = [{"name": name, "color": color} for name, color in zip(names, colors)]

【讨论】:

    【解决方案2】:
    [ {'name': name, 'color': color} for name, color in zip(names, colors) ]
    

    适用通常的条款和条件:

    • 在 Python 2 中,建议将 itertools.izip 用于可能较大的列表
    • 如果实际数据有很多列表/属性,这可以概括为在大规模上更优雅
    • 如果密封破损,保修无效
    • ...

    【讨论】: