Как отсортировать элементы только в одном списке значений ключей в словаре - PullRequest
0 голосов
/ 22 октября 2019

У меня есть словарь (будет составлять записи)

mystuff = {'candy': 10, 'purse' : ['phone', 'gum', 'bracelet'],'kit': ['bandages', 'tape']}

Я хочу сортировать элементы в ключе кошелька только по алфавиту. Как бы я это сделал, не меняя порядок всего остального?

Я ожидаю, что результат будет

mystuff = {'candy': 10,'purse' : ['bracelet', 'gum', 'phone'],'kit' : ['bandages', 'tape']}

1 Ответ

0 голосов
/ 22 октября 2019

Как уже отмечали другие, вы можете просто сделать my_candy['purse'].sort() на месте. Но это может привести к изменению существующих данных.

Вы также можете использовать понимание слова , чтобы избежать мутации существующих данных, например:

def new_value(key, value):
    return sorted(value) if key == 'purse' else value


transformed = {
    key: new_value(key, value)
    for key, value
    in mystuff.items()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...