如何调用实例函数?

时间:2013-02-13 11:07:38

标签: python

我有一个类实例,我想调用其中一个实例函数

udp_action = UDPActions( application = self.application )
func = getattr( udp_action, 'udp_' + opts['cmd'] + '_fired' )

但我收到以下错误

Values instance has no attribute '__getitem__' 

我在哪里犯这个错误?

1 个答案:

答案 0 :(得分:2)

你正在使用opts,就好像它是一个字典(或类字典对象),但事实并非如此。

它不支持['cmd']表示法,导致您看到异常。

In [1]: class Values(object): pass

In [2]: opts = Values()

In [3]: opts['cmd']

TypeError: 'Values' object has no attribute '__getitem__'