2012-05-30 2 views
0

У меня есть Dict по умолчанию следующего типа:сортировка Словаря по умолчанию питона

defaultdict(<type 'list'>, {573014L: [{564470L: 0.011759742609333696}, {573012L: 
0.99999999999999978}, {573013L: 0.0032456927808054942}, {573015L: 
0.0032456927808054942}, {573016L: 0.0038420894057914217}, {573017L: 
0.0038420894057914217}, 
{573018L: 0.0034037733703310181}, {573019L: 0.0034037733703310181}], 573012L: [{564470L: 
0.011759742609333696}, {573013L: 0.0032456927808054942}, {573014L: 0.99999999999999978}, 
{573015L: 0.0032456927808054942}, {573016L: 0.0038420894057914217}, {573017L: 
0.0038420894057914217}, {573018L: 0.0034037733703310181}, {573019L: 
0.0034037733703310181}] } 

Таким образом, для каждого первичного ключа, я хочу, чтобы отсортировать список (к, v) пара на основе их значений.

Например. для первого ключа

573014:[{573012:0.9999},{564470: 0.11759}.... and so on... decreasing values order...] 

Как я сделать это вещий образом

Благодаря

+0

http://whathaveyoutried.com/ – Marcin

+0

@Marcin: для K, V в d.Items(): inner_v = d [K] для i_k, i_v в inner_v.items(): .. не очень pythonic вы видите .. – Fraz

+0

Идем дальше и поместим это в ваш вопрос. – Marcin

ответ

1

Вы можете просто использовать встроенный в sorted() на участке значений, но помните, что это не сортирует в , поэтому вам нужно будет обновить словарь.

Смежные вопросы