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

А много тут сейчас сидит недавних выпускников курсов по питону? Хочу

небольшой тест сделать

19 ответов

29 просмотров

Месяц назад закончил курс Python для пентестера от Codeby

Aleksandr-Danilov 🇺🇦 Автор вопроса
Stanislav DragonSov
Месяц назад закончил курс Python для пентестера от...

Окей, пойдёт. Напишите декоратор для функции, который будет перед её запуском print'ить её имя. Решение для синхронных функций, обеспечьте максимальную гибкость. Если не знаете как получить имя функции, пишите.

Aleksandr Danilov 🇺🇦
Надеюсь проходили декораторы?

+, заставил ты меня запустить комп)

Aleksandr-Danilov 🇺🇦 Автор вопроса
Stanislav DragonSov
+, заставил ты меня запустить комп)

Добавлю что под максимальной гибкостью подразумевается использование в самых разных сценариях (без магии), чтобы ваше решение не сыпалось и работало корректно

Aleksandr Danilov 🇺🇦
Добавлю что под максимальной гибкостью подразумева...

def custom(func): def wrapper(*args, **kwargs): print(func.__name__) func(*args, **kwargs) return wrapper

в чём именно?)

Aleksandr-Danilov 🇺🇦 Автор вопроса
Stanislav DragonSov
в чём именно?)

Раз уж ты запустил ПК, прогони такой код: @custom() def add(a, b): return a + b a = 5 b = 6 print(add(5, 6)) А тот самый минус который можно списать - то, что твой декоратор не принимает ни арги, ни кварги. Но это ладно. Мой вариант приложить?

Aleksandr Danilov 🇺🇦
Раз уж ты запустил ПК, прогони такой код: @custom...

Понял что не сделал - def custom(func): def wrapper(*args, **kwargs): print(func.__name__) result = func(*args, **kwargs) return result return wrapper

Aleksandr-Danilov 🇺🇦 Автор вопроса
Stanislav DragonSov
Понял что не сделал - def custom(func): def wr...

Мой вариант: def custom(func, *dec_args, **dec_kwargs): def wrapped(*args, **kwargs): print(func.__name__) return func(*args, **kwargs) return wrapped

Aleksandr-Danilov 🇺🇦 Автор вопроса
Stanislav DragonSov
Понял что не сделал - def custom(func): def wr...

Окей, а как бы ты сделал для корутины? *асинхронной функции

Aleksandr Danilov 🇺🇦
Окей, а как бы ты сделал для корутины? *асинхронн...

def custom(func): async def wrapper(*args, **kwargs): print(func.__name__) result = await func(*args, **kwargs) return result return wrapper

Aleksandr-Danilov 🇺🇦 Автор вопроса
Aleksandr-Danilov 🇺🇦 Автор вопроса
Stanislav DragonSov
можно без него)

Вот и я к тому, код только засоряет

Aleksandr Danilov 🇺🇦
Мой вариант: def custom(func, *dec_args, **dec_kw...

А зачем тут принимать аргументы для декоратора, не используя их?)

Aleksandr-Danilov 🇺🇦 Автор вопроса
Stanislav DragonSov
А зачем тут принимать аргументы для декоратора, не...

условие задачи. максимальная гибкость. да и я таки учёл что этот момент прояснил слабо

Stanislav DragonSov
можно без него)

Скорее нужно без него. Видел какой-то PEP про это. Нет смысла объявлять переменную только для того, чтобы на следующей строке один раз использовать в простой операции.

Aleksandr-Danilov 🇺🇦 Автор вопроса
Roman Voronov
Скорее нужно без него. Видел какой-то PEP про это....

Вроде уже отписывал, пункт невнятный получился.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта