Здесь я пытаюсь вызвать функцию, используя значение ключа словаря.
>>> def hello():
print('hello')
>>> a = {'+': hello()}
он просто печатает Привет после выполнения этой строки.
>>> a['+']
Если я вызываю словарь, используя значение ключа, это ничего не дает. Что мне здесь не хватает?






Не помещайте (), пока вы используете имя функции в качестве значения для словаря, потому что как только python find () выполнит функцию.
Вместо этого просто добавьте имя функции a = {'+': hello}
А затем используйте () при извлечении значения из словаря
a["+"]()
Вам нужен обратный звонок.
def hello():
return 'hello'
Или я думаю, что это то, что ты хочешь
Вы должны поместить свой вызываемый объект в качестве значения в dict, и тогда вызовет его.
>>> def hello():
print('hello')
>>> a = {'+': hello}
>>> a['+']()
hello
Также эту проблему решает использование ответь "привет" вместо печать ('привет').