-6

我有一个python字典如下:

DictValue = {
'Event1': {},
'Event2': {
    'copy3': {
        'SourcePath': 'souce3',
        'DestPath': 'dest3',
        'Platform': u 'Debug|Win32'
    },
    'copy2': {
        'SourcePath': 'souce3',
        'DestPath': 'dest2',
        'Platform': u 'Debug|Win32'
    },
    'copy1': {
        'SourcePath': 'souce1',
        'DestPath': 'dest1',
        'Platform': u 'Debug|x64'
    },
    'copy5': {
        'SourcePath': 'souce5',
        'DestPath': 'dest5',
        'Platform': u 'Release|Win32'
    },
    'copy4': {
        'SourcePath': 'souce4',
        'DestPath': 'dest4',
        'Platform': u 'Release|x64'
    }
}
}

我想对 Dictionary 值进行排序,使其看起来像

{
'Event1': {},
'Event2': {
    'copy1': {
        'SourcePath': 'souce1',
        'DestPath': 'dest1',
        'Platform': u 'Debug|Win32'
    },
    'copy2': {
        'SourcePath': 'souce2',
        'DestPath': 'dest2',
        'Platform': u 'Debug|Win32'
    },
    'copy3': {
        'SourcePath': 'souce3',
        'DestPath': 'dest3',
        'Platform': u 'Debug|x64'
    },
    'copy4': {
        'SourcePath': 'souce4',
        'DestPath': 'dest4',
        'Platform': u 'Release|Win32'
    },
    'copy5': {
        'SourcePath': 'souce5',
        'DestPath': 'dest5',
        'Platform': u 'Release|x64'
    }
}
​}

可能吗?请帮忙。我在用python 2.6

谢谢。

4

1 回答 1

4

字典没有任何排序。如果您需要订购,您的选择是:

  • 改为使用元组列表。
  • .keys()循环时排序(或.values().items(),取决于您的需要)
  • 请改用OrderedDict
于 2012-08-08T13:14:26.230 回答