星期二, 九月 23, 2008

[python] TypeError: 'str' object is not callable

代码:d = f('a'+b.c())

错误:TypeError: 'str' object is not callable

原因:
c是b的成员变量,而不是成员函数,所以变成了:

d = f( ('a'+b.c)() )

假设b.c='x',则 'a'+b.c='ax',就成了 'ax'(),这就相当于要把'ax'这个str当
成函数去call,而str是不能被call的(not callabe),于是出现上面那个很不可思
议的错误。

没有评论: