170 похожих чатов

Подскажите, как сделать так, чтобы значениями словаря output некая переменная

n? def foo(**kwargs):
print(kwargs)
foo()
foo(x=1,y=2) >>>{}
{'x': 1, 'y': 2}

15 ответов

10 просмотров

Хехе, как непонятно что ты хочешь), ну допустим так foo(**kwargs): return kwargs n = foo(x=1,y=2) n >> {'x': 1, 'y': 2}

Ключом в словаре должно выступать значение переменной?

Пример входа и выхода в студию, постановка задачи - жесть

Внутри декоратора описываешь новую функцию, которая вызывает декорируемую функцию, дальше преобразуешь результат вызова как тебе надо, то есть итерируешься по паре ключ/значение, умножаешь значение на n, и заново кладёшь в дикт по исходному ключу, потом возвращаешь изменённый словарь. А переменная n у тебя будет доступна из внешней области видимости

Yulya A.- Автор вопроса
Michael Pokrovsky
Внутри декоратора описываешь новую функцию, котора...

Спасибо большое, мне понятно вроде. Сейчас поробую

так что ли? def multiply(n): def decorator(callable): def wrapper(*args, kwargs): result = callable(*args, kwargs) result = {key: value * n for key, value in result.items()} return result return wrapper return decorator @multiply(3) def test_func(): return {"a": 1, "b": 2, "c": 3} print(test_func()) # {'a': 3, 'b': 6, 'c': 9}

LeeeeT Burgerberg
это что (what?)

Чтобы атрибуты декорируемой функциии сохранить на всякий случай

Yulya A.- Автор вопроса
LeeeeT Burgerberg
так что ли? def multiply(n): def decorator(calla...

Спасибо большое, вы так помогли. Спасибо

Yulya A.
Спасибо большое, вы так помогли. Спасибо

Короче в гугле это называется "декоратор с аргументами python" - это на всякий случай

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта