在两个字典上循环查找后续字典的数目

2024-10-01 19:16:34 发布

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

我有一本物品字典

dictionary['A'].objects

每个对象字典(“a”、“b”、“c”等)都包含一个属性字典

dictionary['A'].objects['a'].attributes

我想做的是获取给定对象的所有属性字典并创建一个新字典。这个包含所有属性的新主字典只需要包含属性字典中的现有值,包括重复的值。会有重复的键,这在字典中是不可能发生的,所以我需要为每个值(1、2、3或其他值)创建新的任意键

更新:

这是我目前正在做的创建字符串列表。不管出于什么原因,当我去操纵它时,我会丢失列表中的元素。len(listA)在代码中的那个位置返回0。如果我将它推入第二个for循环,它将保持填充状态。但是,然后我提前终止for循环,不获取任何后续的属性字典。这就是为什么我一直在反思该怎么做,也许我的问题与使用列表有关

    listA = []

    for objectsA in dictionary.objects:
        thisObjectA = dictionary.objects[objectsA]

        for attributesA in thisObjectA.attributes:
            listA.append(attributesA + " " + thisObjectA.attributes[attributesA])


    len(listA)

Tags: 对象in列表fordictionarylen字典属性
1条回答
网友
1楼 · 发布于 2024-10-01 19:16:34

刚刚解码了你的代码,并做了这个片段,如果这不工作,请让我现在

sample_data = {'dictA': {'dictA1': 'A'}, 'dictB': {'dictB1': 'B'}}

listA = []

for key in sample_data.keys():
    new_data = sample_data[key]
    for key1 in new_data.keys():
        listA.append(key1 + " " + new_data[key1])

print(listA)
print(len(listA))

相关问题 更多 >

    热门问题