首页 文章

循环2个字典以查找后续字典的数量[关闭]

提问于
浏览
0

我有一个对象字典

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)

1 回答

  • 1

    刚解码你的代码并制作了这个片段,如果这不能正常工作让我现在

    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))
    

相关问题