Найти - Пользователи
Полная версия: Словарь со словарями
Начало » Центр помощи » Словарь со словарями
1
e398
Добрый день
Нужна помощь
есть словарь со словарями

{ ‘pr1’: {
‘name’ = one,
‘rank’ = 2,
‘poz’ = 3 }
{'pr2' : {
‘name’ = two
‘rank’ = 3,
‘poz’ = 6 }
{'pr3' : {

Не могу понять, как все соединить в один список\словарь что бы получилось что-то типо

 one{rank = 1, poz = 3}

что бы в последствии можно было бы отсортировать все pr по “rank” например
Думаю нужно циклом for, но не хватает ума как это все написать
JOHN_16
Не поверите
 { 'pr1': {
   'name' : one,
   'rank' : 2,
   'poz' : 3 }
{'pr2' : {
   'name' : two
   'rank' : 3,
   'poz' : 6 }
}
e398
JOHN_16
Не поверите
)))) ну почти

Но как мне сравнить все pr, коих много, что бы вывелось имя с самым большим “rank” или с самым малым ?
JOHN_16
Это только один из способов.
 >>> d = {
...     'pr1': {
...         'name' : 'one',
...         'rank' : 2,
...         'poz' : 3,
...     },
...         'pr2' : {
...         'name' : 'two',
...         'rank' : 3,
...         'poz' : 6,
...     }
... }
>>> 
>>> max_rank = max([(x['rank'], x['name']) for x in d.values()], key=lambda x: x[0])[1]
>>> max_rank
'two'
>>> min_rank = min([(x['rank'], x['name']) for x in d.values()], key=lambda x: x[0])[1]
>>> min_rank
'one'
e398
Спасибо!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB