Skip to main content
 首页 » 编程设计

python之在字典声明中使用 OrderedDict

2025年05月04日15hnrainll

我有以下相当复杂的数据结构:

temp_dict = { 
    'a': { 
        'aardvark': (6,True), 
        'apple': (3,True) 
    }, 
    'b':{ 
        'banana': (2,False), 
        'bobble': (8,True) 
    } 
} 
print(temp_dict['a']) 

这是一个包含另一个字典层 (a,b) 的字典 (temp_dict),它包含另一个包含元组的字典 (aardvark, apple)。

但这输出: {'apple': (3, True), 'aardvark': (6, True)}

我不介意a,b的顺序;但我需要 aardvark, apple 层成为 orderedDict - 他们必须记住插入的顺序(永远不会排序)。所以我试过了:

temp_dict = { 
    'a': OrderedDict{ 
        'aardvark': (6,True), 
        'apple': (3,True) 
    }, 
    'b':OrderedDict{ 
        'banana': (2,False), 
        'bobble': (8,True) 
    } 
} 

但这只会给我无效的语法。 我该怎么做呢?我发现的所有示例都没有显示在另一个数据结构中声明 OrderedDict。

谢谢

请您参考如下方法:

尝试:

temp_dict = { 
    'a': OrderedDict([ 
        ('aardvark', (6,True)), 
        ('apple', (3,True)), 
    ]), 
    'b':OrderedDict([ 
        ('banana', (2,False)), 
        ('bobble', (8,True)), 
    ]), 
}