【发布时间】:2018-10-25 08:48:32
【问题描述】:
我有以下列表:
a = ['A', 'B', 'C', 'C']
b = ['2', '3', 2, 3]
我将它们压缩如下以获得字典:
a_dict = dict(zip(a,b))
但是,由于最终对象是一个字典,我不能重复键:
{'A': '2', 'B': '3', 'C': 3}
为了拥有这样的东西,我可以有哪些选择? (*):
{'A': '2', 'B': '3', 'C':2, 'C': 3}
我尝试将所有内容都转换为元组,但是我使用 pop 替换字典中的一些键和值:
data['A'] = data.pop('B')
因此,我不能使用元组格式。因此,鉴于以上两个列表,我怎样才能得到(*)?
【问题讨论】:
-
您可能需要不同的数据结构,因为 dict 不能有重复的键。听起来你有一个XY problem。您在这里的最终目标是什么?
-
您希望
result['C']在您提议的对象中是什么? -
你不能得到
{'A': '2', 'B': '3', 'C':2, 'C': 3}一个键将指向一个字典中的一个值你可以得到类似{'A': '2', 'B': '3', 'C':[2, 3]}的东西 -
字典不能包含重复的键,那么你想要什么?
-
你没有回答我的问题。如果您有
result = what you want,并且您尝试检索'C',类似于通常的字典中的result['C'],期望得到什么?
标签: python python-3.x list data-structures