python - 在字典声明中使用 OrderedDict

标签 python python-3.x dictionary ordereddictionary

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

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)),
    ]),
}

关于python - 在字典声明中使用 OrderedDict,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20786195/

相关文章:

python - Flask-MySQL : how to handle payload to Insert to DB?

python - python中毫秒为零时如何将时间戳写入txt文件

python - 如何使用 "getMouse() & getMouseNow()"以及哪个文件包含这些函数?

python-3.x - Pygame - 不存在 "Setup"文件,正在运行 "buildconfig/config.py"

python - 获取重复时间的日期时间对象列表

ios - 如何使用字典中分组结构中的数据填充 UITableView?

python - 在 Python 中,使用二分法在字典列表中查找项目

python - 在 SymPy 中用矩阵替换标量

python - 使用 ctypes 通过引用传递整数数组

python - 字典理解匹配值?