Python-如何在字典中添加多个键和值

Python-如何在字典中添加多个键和值,python,dictionary,Python,Dictionary,我正在尝试动态添加字典值和键 例如: 首先,我将把字典作为: dict1 = {'ID':2048, 'Name':'john', 'Father Name':'David'} 然后在下一次迭代中,字典应更新为以下内容: dict1 = ({'ID':2048, 'Name':'john', 'Father Name':'David'}, {'ID':2054, 'Name':'steve', 'Father Name':'Bird'}) 那么下一次迭代将是 dict1 = ({'ID':2

我正在尝试动态添加字典值和键

例如:

首先,我将把字典作为:

dict1 = {'ID':2048, 'Name':'john', 'Father Name':'David'}
然后在下一次迭代中,字典应更新为以下内容:

dict1 = ({'ID':2048, 'Name':'john', 'Father Name':'David'}, {'ID':2054, 'Name':'steve', 'Father Name':'Bird'})
那么下一次迭代将是

dict1 = ({'ID':2048, 'Name':'john', 'Father Name':'David'}, {'ID':2054, 'Name':'steve', 'Father Name':'Bird'}, {'ID':2046, 'Name':'Calvin', 'Father Name':'Adam'})
等等

然后我必须根据ID对dict1进行排序,如下所示:

dict1 = ({'ID':2046, 'Name':'Calvin', 'Father Name':'Adam'}, {'ID':2048, 'Name':'john', 'Father Name':'david'}, {'ID':2054, 'Name':'steve', 'Father Name':'Bird'})
我已尝试使用以下代码:

dict1 = {}

## Here Candidate_ID, Candidate_Name and Candidate_Father_Name will be updated as per the script flow.
dict1.update({'ID': Candidate_ID, 'Name': Candidate_Name, 'Father Name' : Candidate_Father_Name)
请建议如何更新字典中具有相同值SID、名称、父名称、,
然后使用值ID对字典进行排序。

我相信字典只支持一个键和一个值

看看这个:


您可以做的是在列表或数组中转换您的值。

我相信字典只支持一个键和一个值

看看这个:


您可以在列表或数组中转换值。

您希望在字典列表中收集这些值,因为您希望每个字典都是包含相同键的信息的集合。字典只能保存唯一的键,因此为了能够以您希望的方式构造字典,您需要一个支持这一点的数据结构。这里的名单是一个很好的候选人

所以,你想要这样的东西:

data = []
user_data = {'ID':2048, 'Name':'john', 'Father Name':'David'}
data.append(user_data)
new_user_data = {'ID':2049, 'Name':'bob', 'Father Name':'McBobsalot'}
data.append(new_user_data)
数据输出:

data = [{'ID':2048, 'Name':'john', 'Father Name':'David'}, {'ID':2049, 'Name':'bob', 'Father Name':'McBobsalot'}]
另一种看待这一点的方法是,可能仍然有一本词典,但您需要重新构建。考虑一下,“ID”本身是每个字典的一个键,并且该键的值将是感兴趣的词典。为了帮助说明这一点,请看一下它的外观:

data = {
    2048: {'ID':2048, 'Name':'john', 'Father Name':'David'}, 
    2049: {'ID':2049, 'Name':'bob', 'Father Name':'McBobsalot'}
}
添加到字典的一个非常简单的示例如下:

data = {}
new_data = {'ID':2048, 'Name':'john', 'Father Name':'David'}
data[new_data['ID']] = new_data
有一种非常简单的方法可以帮助您动态地支持此功能,您只需传递字典和要添加的数据:

def add_data(your_dict, new_data):
    your_dict[new_data['ID']] = new_data
    return your_dict

您希望将其收集到字典列表中,因为您希望每个字典都是包含相同键的信息的集合。字典只能保存唯一的键,因此为了能够以您希望的方式构造字典,您需要一个支持这一点的数据结构。这里的名单是一个很好的候选人

所以,你想要这样的东西:

data = []
user_data = {'ID':2048, 'Name':'john', 'Father Name':'David'}
data.append(user_data)
new_user_data = {'ID':2049, 'Name':'bob', 'Father Name':'McBobsalot'}
data.append(new_user_data)
数据输出:

data = [{'ID':2048, 'Name':'john', 'Father Name':'David'}, {'ID':2049, 'Name':'bob', 'Father Name':'McBobsalot'}]
另一种看待这一点的方法是,可能仍然有一本词典,但您需要重新构建。考虑一下,“ID”本身是每个字典的一个键,并且该键的值将是感兴趣的词典。为了帮助说明这一点,请看一下它的外观:

data = {
    2048: {'ID':2048, 'Name':'john', 'Father Name':'David'}, 
    2049: {'ID':2049, 'Name':'bob', 'Father Name':'McBobsalot'}
}
添加到字典的一个非常简单的示例如下:

data = {}
new_data = {'ID':2048, 'Name':'john', 'Father Name':'David'}
data[new_data['ID']] = new_data
有一种非常简单的方法可以帮助您动态地支持此功能,您只需传递字典和要添加的数据:

def add_data(your_dict, new_data):
    your_dict[new_data['ID']] = new_data
    return your_dict

dict1={'ID':2048,'Name':'john','fathername':'David'},{'ID':2054,'Name':'steve','fathername':'Bird'}不是字典,而是dicts的元组。在每次迭代中使用一个dicts列表来追加dicts。dict1={'ID':2048,'Name':'john','fathername':'David'},{'ID':2054,'Name':'steve','fathername':'Bird'}不是字典,而是dicts的元组。使用列表af dicts在每次迭代中追加dicts。值可以是列表。值可以是列表。