Я пытаюсь создать словарь со строкой для каждого ключа и лямбда-функцией для каждого значения. Я не уверен, где я ошибаюсь, но я подозреваю, что это либо моя попытка сохранить лямбда в словаре, либо тот факт, что моя лямбда использует оператор быстрого доступа.
Код:
dict = {
'Applied_poison_rating_bonus':
(lambda target, magnitude: target.equipmentPoisonRatingBonus += magnitude)
}
SyntaxError: invalid syntax
ошибка - SyntaxError: invalid syntax
и указание прямо на мой +=
. Являются ли операторы ярлыков не разрешены в лямбдах, или я даже дальше, чем я думал?
Ради здравомыслия, я пропустил сотни очень похожих пар (это не просто крошечный словарь).
РЕДАКТИРОВАТЬ:
Кажется, моя проблема заключалась в попытке присвоить что-либо в выражении лямбда. Как бы то ни было, моя проблема заключается в том, как я могу получить метод, который знает ключ к этому словарю, чтобы иметь возможность изменять это поле, определенное в моем (сломанном) коде?
Может ли какой-то вызов eval() помочь?
EDIT_FINAL:
Метод functools.partial() был рекомендован для этой расширенной части вопроса, и я считаю, что после изучения этого вопроса мне будет достаточно решить мою проблему.