Python не хочет принимать словарь в функцию

Вот мой код -

stats = {
        "PLm" : PLm,
         }
def MTGWU(**stats):
    time.sleep(0.4)
    while True:
        print(stats)
        PLm = stats["PLm"]

Ошибка которую выдаёт:

TypeError: MTGWU() takes 0 positional arguments but 1 was given

Помогите пожалуйста


Ответы (1 шт):

Автор решения: Danis

Надо писать так:

def MTGWU(**stats):
...
MTGWU(**stats) 

либо так:

def MTGWU(stats):
...
MTGWU(stats) 

В вашем случае лучше использовать второй вариант и вызывать функцию так:

threading.Thread(target=MTGWU, args=(stats, ))
→ Ссылка