Задание 7

Используя данные предыдущего задания вывести на экран все страны с количеством городов в них

Упорядочивание словарей

Как нам уже известно, для словарей существует особенность. Порядок выдачи элементов словаря не совпадает с порядком добавления, что несколько усложняет использование внешних функций сортировки. Однако, в Питоне существует встроенный метод решения проблемы сортировки: функция sorted(). Предположим, что у нас есть словарь следующего вида:

d = {1: 'D', 2: 'B', 3: 'B', 5: 'E', 4: 'A'}

Результатом применения функции sorted() к этому словарю будет список: [1,2,3,4,5], который уже можно использовать для получения данных из словаря в порядке возрастания ключей.

for i in sorted(d):
  print(d[i])

В результате получим:

D
B
B
A
E

Аналогичную операцию можно применить и для значений:

for i in sorted(d.values()):
  print(i)

Результатом работы будет

A
B
B
D
E

Однако, если нам нужны значения ключей, упорядоченные по значениям, то нужно применить следующий трюк

for i in sorted(d, key=d.__getitem__):
    print(i)

И результатом будет:

4
2
3
1
5

Задание 8

Вывести на экран список стран, упорядоченный по возрастанию количества городов

python/week5.txt · Последние изменения: 24/11/2017 11:35 — ybezrukov
CC Attribution-Noncommercial 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0