繁体   English   中英

从字典中调用函数

[英]Calling a function from within a dictionary

我想从字典中调用函数。 可能吗? 如果是这样,我将如何去做呢?

def function():
    pass

my_dic = {
    'hello': function()
}

据我了解,您真正的意思是如何将函数引用保留在字典中,以便在通过键从字典中获取函数引用之后再调用它。 这是可能的,因为函数是Python中的一流对象

>>> def function():
...     print("Hello World")
... 
>>> d = {
...     'hello': function  # NOTE: we are not calling the function here - just keeping the reference
... }
>>> d['hello']()
Hello World

与一些用例示例相关的线程:

对的,这是可能的。 就像其他类型一样,函数可以存储在字典中。 代码中的问题是,您正在存储函数的返回值(在这种情况下为None ,而不是函数本身。

删除括号() ,您应该可以使用:

>>> my_dic = {
...    'hello': function
... }

>>> my_dic['hello']()
None

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM