gpt4 book ai didi

python - 为无序数据附加 Python 字典

转载 作者:太空宇宙 更新时间:2023-11-04 02:31:54 25 4
gpt4 key购买 nike

我有一个大的 JSON 文件,我试图从中提取特定数据,然后将一个子集合并到字典中。在 JSON 文件中,多个对象引用相同的名称(人),但每个对象都包含关于该人的单独信息(例如,一个对象有他们的电话号码,另一个有他们的地址,另一个有他们的电子邮件)。到目前为止,提取数据还不是问题。我苦苦挣扎的地方是建立字典来巩固一切。

我想做的是:

1) 创建字典:

names = {}

2) 由于数据是无序的,我需要为那个人创建一个 key 。

n = name
names['name'] = n

3) 当我识别记录类型时,然后将那个人的数据添加到字典中

p = phoneNumber
a = Address
names[n]['phoneNumber'] = p
names[n]['Address'] = a

最后,一旦遍历了整个 JSON 文件,字典就应该完整了。

我怀疑我的代码在创建之前不存在的新 Person 时有效,但是当我添加其他信息时,我将覆盖之前的键而不是附加字典条目。

我想知道的是:

1) 如果我的覆盖逻辑与追加逻辑正确?

2) 我怎样才能做到这一点?使用字典对此有什么坏处吗?

最佳答案

如果我没理解错的话,你的 json 看起来像这样:

names = {
'Jack Benson': {
'phone number': '+4435025015',
'adress': '21 jump street'},
'Antoine Vincent': {
'phone number': '+4421545486',
'adress': '742 Evergreen Terrace '}
}

要创建类似的东西,最简单的方法是:

names = {}
names['Jack Benson'] = {}
names['Jack Benson']['phone number'] = '+4435025015'
names['Jack Benson']['adress'] = '21 jump street'

names['Antoine Vincent'] = {}
names['Antoine Vincent']['phone number'] = '+4421545486'
names['Antoine Vincent']['adress'] = '742 Evergreen Terrace'

1) If my overwrite vs. append logic correct?

n = name
names['name'] = n

如果 name 是一个空字典,是的,一切都是正确的

2) How can I accomplish this? Is using a dictionary bad for this? That's always a good idea to use python built-in's for simple data structures. It's readable and easy to serialize for json.

祝你好运。

小刘

关于python - 为无序数据附加 Python 字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48978063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com