我有一本字典:
{
'doc0': {
'individu': 1,
'manajemen': 1,
'tahu': 1,
'logistik': 1,
'transaksi': 1
},
'doc1': {
'manajemen': 1,
'transfer': 1,
'individu':1,
'tahu':1,
'transaksi': 1,
'logistik': 1
},
'doc2': {
'manajemen': 1,
'logistik': 1,
'transaksi': 1
}
}
我想使用Python将其转换为新字典中的以下内容:
{
'doc0': {
'individu': 1,
'manajemen': 1,
'tahu': 1,
'logistik': 1,
'transaksi': 1,
'transfer':0
},
'doc1': {
'individu': 1,
'manajemen': 1,
'tahu': 1,
'logistik': 1,
'transaksi': 1
},
'doc2': {
'individu': 0,
'manajemen': 1,
'tahu': 0,
'logistik': 1,
'transaksi': 1,
'transfer':0
}
}
您将面临字典中键排序的问题。字典中的键(或键值对)是任意排序的。顺序不是固定的,可以在不同的步骤中更改。你知道吗
为了缓解这个问题,您可以使用模块
collections
中的OrderedDict
。你知道吗如果我理解你的问题,你就把你的字典整理一下,使它们有相同的键。如果
doc1
中有一个键,但是doc2
缺少它,那么doc2
应该用这个键和值0更新。如果这是正确的,那么您更希望复制键,而不是值。你知道吗这是我的尝试:
现在,您在每个字典中都有了所有键,它们被排序并保留顺序。初始数据保持不变。你知道吗
我没有使用任何高级功能,如列表理解、三元运算符或类似功能。这个方法有点幼稚和简单,因为你是一个初学者,我认为你更容易理解每一步。你知道吗
我希望它能帮助你。你知道吗
我不完全清楚您想要完成什么,但是要将dict2中的所有键/值对添加到dict1或在dict1中更新,您需要
dict1.update(dict2)
。示例:或者,如果您只想在dict1中还没有键的情况下从dict2复制键和值,那么
您可以查看以下代码:
我获取嵌套字典中的所有键,然后创建不存在的值(因此在最后的输出中是零)。你知道吗
相关问题 更多 >
编程相关推荐