【问题标题】:how to add key and turn dictonary key to value?如何添加键并将字典键转换为值?
【发布时间】:2021-08-24 13:02:47
【问题描述】:

我有这样的字典:

a = {"RAM": ["25GB", "256GB"], "Storage":  ["25GB"]}

有没有办法制作这样的字典?

wanted_dict = [{"title":"RAM", "items":["25GB", "256GB"]}, {"title":"Storage", "items":["25GB"]}]

我尝试使用 for 循环但没有结果。 有什么建议吗?

【问题讨论】:

  • 您的结果实际上是一个列表,您可以使用以下语法实现这一点:wanted_dict = [{"title": key, "items": value} for key, value in a.items()]。其中a 是您的字典名称。
  • 显示你的循环及其结果。
  • minimal reproducible example for for 循环丢失,“没有结果”是什么意思?

标签: python python-3.x dictionary


【解决方案1】:
a = {"RAM": ["25GB", "256GB"], "Storage":  ["25GB"]}
list_a = [{'title': key, 'items': values} for key, values in a.items()]

【讨论】:

  • 这很有帮助
  • 我能问一下为什么你更喜欢螃蟹的回答吗?
  • 你的回答也不错,但我看到螃蟹先回答,这就是我接受的原因。
  • 我个人也喜欢使用列表推导。所以谢谢你
【解决方案2】:

据我了解,您希望将a 的值转换为wanted_dict 的值而不对其进行硬编码。如果是这样,这是代码:

a = {"RAM": ["25GB", "256GB"], "Storage":  ["25GB"]}
b = []

for key in a:
    entry = {"title": key, "items": a[key]}
    b.append(entry)

print(b)

那么你可以这样做:

a = b

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-21
    • 2011-09-29
    相关资源
    最近更新 更多