0

根据我在这篇文章中看到的内容,我尝试编写这段代码,但它给了我错误。

ticklabels = ax.get_xticklabels()
set_color = operator.methodcaller('set_color("b")')
ticklabels[0].set_color('b') # this runs fine
map(set_color, ticklabels)   #error is here

错误代码:

地图(set_color,ticklabels)AttributeError:'Text'对象没有属性'set_color(“b”)'

您不能将参数传递给方法调用程序中的函数吗?

4

1 回答 1

2

我认为你需要:

set_color = operator.methodcaller('set_color', 'b')

第一个参数是要调用的方法,随后的参数将在调用时传递给该方法。

然后,您可以通过以下方式测试它是否有效:

set_color(ticklabels[0])
于 2012-10-10T10:13:35.757 回答