使用函数';Python中的名字

使用函数';Python中的名字,python,Python,假设我有一个分配给变量的函数,funcfunc包含函数本身(即print func返回 我有一个简单的课程: class Item(): def __init__(self, data): # init code pass def func(self): pass def dunc(self): pass 比如说在\uuu init\uuu中,我在data中收到了func,可以作为data.func访问它。我可以通

假设我有一个分配给变量的函数,
func
func
包含函数本身(即
print func
返回

我有一个简单的课程:

class Item():
    def __init__(self, data):
    # init code
        pass
    def func(self):
        pass
    def dunc(self):
        pass
比如说在
\uuu init\uuu
中,我在
data
中收到了
func
,可以作为
data.func
访问它。我可以通过
self.consume=data.func>将其分配给消费

但是如果我有一个数据函数字典呢

{"func" : <function func at 0x103f25410>, "dunk" : <function dunk at 0x103f25410>}
{“func”:“dunk”:

我可以做一些类似于
self.key=data[key]
的事情吗?换句话说,用字典中的数据分配
func
dunc
,但不必显式地分配
self.func
self.dunc
每个作业?

如果我正确理解了你的问题,你可以这样做:

def __init__(self, data):
    for name, func in data.items():
        setattr(self, name, func)

然后,您可以参考
self.func
self.dunc
(或
data
中的任何内容)。

不客气,很抱歉在
setattr()
调用中出现混淆。我责备我得了流感。:)