Python 由两个位置参数组成的列表?
我试图在类方法中使用列表作为参数,但它说我在一个上给出了两个参数。我已经制作了我的代码原型,并且得到了相同的错误,因此更容易掌握:Python 由两个位置参数组成的列表?,python,python-3.x,Python,Python 3.x,我试图在类方法中使用列表作为参数,但它说我在一个上给出了两个参数。我已经制作了我的代码原型,并且得到了相同的错误,因此更容易掌握: lol = ["lol1", "lol2", "lol3"] class HasList: def __init__(self): self.li = [] def setList(li): self.li = li lolo = HasList() lolo.setList(lol) 我得到的错误是:
lol = ["lol1", "lol2", "lol3"]
class HasList:
def __init__(self):
self.li = []
def setList(li):
self.li = li
lolo = HasList()
lolo.setList(lol)
我得到的错误是:
TypeError:setList()只接受1个位置参数(给定2个)类中方法的第一个参数始终是
self
def setList(self, li):
您忘记将self作为参数传递
def setList(self, li):
self.li = li
当您调用
lolo.setList(lol)
时,Python实际上是调用setList(lolo,lol)
但是setList
在代码中只有一个参数li
,因此引发了异常:
def setList(li):
self.li = li
只需添加self
作为setList
的第一个参数,即:
def setList(self,li):
self.li = li