Метод sort
возвращает None
(он отсортировал временный список, заданный items()
, но его больше нет). Использование:
for k, v in sorted(mydict.iteritems()):
Использование .items()
вместо .iteritems()
также нормально (и необходимо, если вы находитесь в Python 3), но в Python 2 (где .items()
создает и возвращает список, а .iteritems()
нет, просто возвращает итератор), избегая создания дополнительного списка, это выгодно - sorted
создаст свой собственный список для возврата, в любом случае, без изменения аргумента, переданного ему.