извините за наивный вопрос, но при выполнении этого кода:
def test_kwargs(n, **kwargs):
if kwargs is None:
print("no keyword args")
return
for key, value in kwargs.items():
print(str(key))
print(str(value))
if key==fn:
print(value(10))
test_kwargs(3,fn=lambda x: x^2)
я получаю ошибку в проверке
if key==fn
NameError: name 'fn' is не определено
Однако print (str (key)) правильно выводит 'fn'.
Итак, что здесь происходит; почему проверка не проходит и как можно проверить ключ по возможным именам аргументов?