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

Декораторы · 4 из 19

Адрес заглавными

На посылках адрес пишут как придётся: « ул. садовая, 5 », «УЛ. Садовая,5». Сортировочный аппарат отделения читает только заглавные буквы и спотыкается о пробелы по краям. Функций, которые принимают адрес первым аргументом, в программе окна №3 с десяток — наклейка, квитанция, опись, — и Зинаида Петровна просит не чинить их по одной.

Что сделать

Напишите декоратор, который перед вызовом приводит первый аргумент — адрес — к заглавным буквам без пробелов по краям.

Что приходит

  • f — функция, у которой адрес — первый аргумент; остальные аргументы у неё бывают любыми

Что вернуть

Новую функцию: она зовёт f, подставив вместо адреса adres.strip().upper(), остальное передаёт как пришло и возвращает ответ f.

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

Пример

Функция naklejka(adres, indeks) склеивает «индекс, адрес». Обёрнутая @adres_zaglavnymi, на адресе « ул. садовая, 5 » она отдаёт '190000, УЛ. САДОВАЯ, 5'.

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

Обсуждение

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

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