Войти Создать аккаунт

Свои команды · Шаг 1 из 4

Реестр команд

Команд в утилите будет десяток, и каждая должна знать своё имя для командной строки и короткое описание для справки. Держать этот список отдельно от самих функций — верный способ однажды забыть в нём строчку.

Что сделать

Заведите реестр команд, куда каждая команда записывает себя сама, — одной строкой над функцией.

Что приходит

  • imya — имя команды для командной строки

  • opisanie — короткое описание для справки

Что вернуть

Словарь REESTR в модуле, сначала пустой; komanda(imya, opisanie) даёт декоратор, который кладёт функцию в REESTR[imya] как {"rabota": …, "opisanie": …} и возвращает её же.

Допишите функцию komanda в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

В проекте

Каждая команда утилиты в оболочке помечена @komanda("имя", "описание"): так она попадает в реестр, по которому шаг 4 ищет команды и строит справку. Чтобы добавить свою команду, хватит двух строк.

Пример

После двух помеченных функций — «сумма» и «привет» — в REESTR два имени в порядке регистрации: ['сумма', 'привет']. У «суммы» описание «сложить числа», а REESTR['сумма']['rabota'](2, 3) возвращает 5 — это та же функция summa.

Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.