首页 > 解决方案 > 在字典中放置一个函数

问题描述

在 Perl 中,如果我希望哈希元素的值是对匿名子例程的引用:

my $hash = { hi => sub { print "dummy" } };
$hash->{hi}->();   # Prints "dummy".

Python中以前的哈希/字典有等效的方法吗?

注意:我需要包含函数的键值,而不是重定向到函数的引用

标签: python

解决方案


如果我理解正确,您可以使用 lambda 函数来创建匿名函数:

d = {'key': lambda x: print(x)}
d['key']("hello")
# prints "hello"

如果需要更复杂的函数,最好编写函数并添加对字典的引用。

[每条评论] lambdas 不需要该参数。您还可以使用:

d = {'key': lambda: print("Hello")}

并在没有参数的情况下调用它:

d['key']() # also prints "hello"

推荐阅读