sswwssww
@sswwssww

Почему **kwargs не может принять словарь с ключом int?

def tst_func(**kwargs):
    print(kwargs)
    
d = dict((('t', 2), (2, 2),))
print(d)
tst_func(**d)

Почему это не работает?
Выдает ошибку:
Traceback (most recent call last):
File "main.py", line 22, in
tst_func(**d)
TypeError: tst_func() keywords must be strings
  • Вопрос задан
  • 115 просмотров
Решения вопроса 1
@bacon
Потому что, в python у функций число не может быть именем для аргумента. Вам в ошибке явно про это пишут
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@antonksa
sswwssww, вы сами подумайте... То что вы пытаетесь сделать эквивалентно
tst_func(t=2, 2='asdf')
Как вы вообще себе это представляете?
print(2)
>>> asdf
type(2)
>>> str

вот так?!
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы