将两个词典合并成一个结果词典

2024-06-28 19:24:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试合并我的两个列表。你知道吗

gpbdict = dict(zip(namesb, GPB))
>>> {'1': True, '3': True, '2': True, '5': True, '4': True, '7': True, '6': True, '8': True}
gpadict = dict(zip(namesa, GPA))
>>> {'11': True, '10': True, '13': True, '12': True, '15': True, '14': True, '16': True, '9': True}

然而,这似乎并不像:

 json.loads(gpadict + gpbdict)

或者

gpa_gpb = [gpadict, gpbdict]
print json.dumps(gpa_gpb, indent=2, sort_keys=True))

只有后者将生成一个包含两个单独列表的结果:

>>>[
>>>  {
>>>    "10": true,
>>>    "11": true,
>>>    "12": true,
>>>    "13": true,
>>>    "14": true,
>>>    "15": true,
>>>    "16": true,
>>>    "9": true
>>>  },
>>>  {
>>>    "1": true,
>>>    "2": true,
>>>    "3": true,
>>>    "4": true,
>>>    "5": true,
>>>    "6": true,
>>>    "7": true,
>>>    "8": true
>>>  }
>>>]

我是否错过了一步?你知道吗


Tags: jsontrue列表zipdictgpaloadsgpb
1条回答
网友
1楼 · 发布于 2024-06-28 19:24:08

你在做一些奇怪的事情。你知道吗

首先,你想合并Python对象,不是吗?为什么和怎么做?gpbdictgpbadict都是字典(不是list),所以你的问题不是很具体。而json.loads应该接收字符串(JSON)而不是Python对象。所以,也许你只是想:

gpbadict = dict(zip(namesb + namesa, GPB + GPA))

注意,操作符+可以处理列表,但不能处理字典。你知道吗

另一方面,如果要合并词典,可以使用update

gpadict.update(gpbdict)

这将有效地合并字典:gpadict将成为gpadict(起始字典)和gpbdict的组合。如果有重复的键,它们将被覆盖。你知道吗

在整个问题中,我找不到任何真正的JSON引用。我错过了什么?你知道吗

相关问题 更多 >