Как отсортировать список, содержащий вложенные списки, в котором также находятся словари. цель - отсортировать основной список по словарю VALUE - PullRequest
0 голосов
/ 10 июля 2020

Я хочу отсортировать список, подобный этому, с помощью функции itemgetter. Я пытаюсь расположить список в порядке возрастания по словарю КЛЮЧ «Особый номер». Поскольку вложенный список имеет дело со словарями, мне трудно это заполнить.

from operator import itemgetter


lists = [
    [{'time': str, 'ask price': str},
     {'ticker': 'BB','Special number': 10}],
    [{'time': str , 'price': str},
     {'ticker': 'AA', 'Special number': 5}
     ]
]

Я пытался использовать:

gg = lists.sort(key=itemgetter((1)['special number']))

print(gg)

Большое спасибо!

1 Ответ

1 голос
/ 10 июля 2020

Не думаю, что здесь нужно использовать itemgetter(). Если словарь с ключом 'Special number' всегда находится в индексе 1 списков, то достаточно будет сделать следующее:

sorted_list = sorted(lists, key=lambda x: x[1]['Special number'])
print(sorted_list)

output

[[{'price': <class 'str'>, 'time': <class 'str'>},
  {'Special number': 5, 'ticker': 'AA'}],
 [{'ask price': <class 'str'>, 'time': <class 'str'>},
  {'Special number': 10, 'ticker': 'BB'}]]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...