【发布时间】:2011-02-05 20:54:19
【问题描述】:
对于错误:
TypeError: takes exactly 1 argument (2 given)
使用以下类方法:
def extractAll(tag):
...
并调用它:
e.extractAll("th")
当我给它 1 个参数时,错误似乎很奇怪,该方法应该只接受 1 个参数,但它说我没有给它 1 个参数....我知道可以通过添加 @ 来解决问题987654324@ 进入方法原型,但我想知道错误背后的原因。
我是不是因为通过e.extractAll("th") 调用它的行为也传入self 作为参数?如果是这样,通过删除调用中的self,我是否会使其成为某种可以像Extractor.extractAll("th") 一样调用的类方法?
【问题讨论】:
-
只需在函数参数前添加self:def extractAll(self, tag)
标签: python