#python
#python
Вопрос:
Можете ли вы помочь мне взломать это?Контекст немного сложен для объяснения, но tl; dr Мне приходится иметь дело с производственной системой, в которой я не могу устанавливать библиотеки, и одна из библиотек ожидает недопустимые аргументы ключевого слова в качестве входных данных.
def hack_me(**kwargs):
if kwargs.get("hack:/me") is not None:
print("Hacked!")
Цель состоит в том, чтобы функция выше, не изменяя ее, печатала Hacked!
.
Комментарии:
1.
args = {'hack:/me': True}, hack_me(**args)
?
Ответ №1:
В то время как обычные аргументы не могут иметь никакой формы для своего имени, расширенные аргументы, использующие тот же синтаксис, что и в сигнатуре вашей функции (т.Е. **args
), Могут.
>>> args = {'hack:/me': True}
>>> hack_me(**args)
Hacked!