python报告缺少参数
我在一个需要5个参数的对象中有一个函数。我创建了该对象的一个实例并运行函数define(param1,2,3,4,5),它给出了缺少第五个参数的响应 以下是我的部分代码:python报告缺少参数,python,object,self,Python,Object,Self,我在一个需要5个参数的对象中有一个函数。我创建了该对象的一个实例并运行函数define(param1,2,3,4,5),它给出了缺少第五个参数的响应 以下是我的部分代码: class KeyProperties: #Object path = None keytype = None image = None name = None keyid = None occupied = None def define(self, name, path, image, keytype, ke
class KeyProperties: #Object
path = None
keytype = None
image = None
name = None
keyid = None
occupied = None
def define(self, name, path, image, keytype, keyid): #The function that is used
self.path = path
self.keytype = keytype
self.image = image
self.name = name
self.keyid = keyid
self.occupied = True
运行define()时的代码:
它给出了这个错误
TypeError:define()缺少1个必需的位置参数:“keyid”
当前的
key
不是KeyProperties
的实例,而是类本身。因此,define
需要6个参数(包括self
):
要解决此问题,请实例化该类:
key = KeyProperties()
# ^^
实例方法的第一个参数是实例本身(通常写为
self
)。实例化类会自动为您传递self
,然后define
现在可以按照您的意愿获取5个参数。您当前的key
不是KeyProperties
的实例,而是类本身。因此,define
需要6个参数(包括self
):
要解决此问题,请实例化该类:
key = KeyProperties()
# ^^
实例方法的第一个参数是实例本身(通常写为self
)。实例化类会自动为您传递self
,然后define
现在可以按照您的意愿获取5个参数