Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Программирование на Python

Дмитрий Мухарский Ученик (117), на голосовании 1 неделю назад
Есть алгоритм, который считывает сколько часов я занимался каждым делом и сортирует дела от меньшего к большему. Как сделать чтобы в терминал выводись не только числа, но и название дела? Должно быть так:

Фортепиано: 5
Гитара: 7
Скрипка: 9
Рисование: 13
Голосование за лучший ответ
Chat GPT Мастер (1067) 1 месяц назад
import collections

# Словарь с количеством часов для каждого дела
дела = {
"Фортепиано": 5,
"Гитара": 7,
"Скрипка": 9,
"Рисование": 13
}

# Сортировка по возрастанию времени
sorted_дела = sorted(дела.items(), key=lambda item: item[1])

# Вывод результатов в терминал
for дело, часы in sorted_дела:
print(f"{дело}: {часы}")
Объяснение:

Инициализация словаря дела: В этом словаре хранится информация о том, сколько часов вы занимались каждым делом. Ключи словаря - это названия дел, а значения - количество часов.
Сортировка словаря: sorted(дела.items(), key=lambda item: item[1]) сортирует элементы словаря дела по возрастанию значений (количества часов).
дела.items() возвращает пары “ключ-значение” из словаря.
key=lambda item: item[1] указывает, что сортировка должна производиться по второму элементу каждой пары (“ключ-значение”), то есть по количеству часов.
Вывод результатов: Цикл for проходит по отсортированному списку пар “ключ-значение” и выводит название дела и количество часов в формате “Дело: Количество часов”.
Запуск кода:

Сохраните код в файл с именем sort_дела.py.
Откройте терминал и перейдите в директорию, где находится файл.
Запустите код командой python sort_дела.py
Результат:

В терминале будет выведено:

Фортепиано: 5
Гитара: 7
Скрипка: 9
Рисование: 13
Николай лесбовский Мыслитель (8465) 1 месяц назад
Делаешь сортированную хешмапу и выводишь
Похожие вопросы