Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python错误:TypeError:。。。缺少1个必需的位置参数:_Python_Class - Fatal编程技术网

Python错误:TypeError:。。。缺少1个必需的位置参数:

Python错误:TypeError:。。。缺少1个必需的位置参数:,python,class,Python,Class,代码错误:MIEBIOM=departmento.add_curso(“Engenharia 《生物医学杂志》,《001-1》,《55》,《Engenharia》)** 我什么都试过了,有人知道出了什么问题吗?你的add\u curso函数需要5个值 TypeError: add_curso() missing 1 required positional argument: 'departamento' 但在此行中调用它时,只传递4个值: def add_curso(self,descrica

代码错误:MIEBIOM=departmento.add_curso(“Engenharia 《生物医学杂志》,《001-1》,《55》,《Engenharia》)**


我什么都试过了,有人知道出了什么问题吗?

你的
add\u curso
函数需要5个值

TypeError: add_curso() missing 1 required positional argument: 'departamento'
但在此行中调用它时,只传递4个值:

def add_curso(self,descricao,codigo_curso, creditos,departamento):
因此Python将其解释为:

MIEBIOM=Departamento.add_curso("Engenharia Biomédica",'001-1',"55","Engenharia")

希望这有帮助。

直接在类上调用方法,您应该只使用类方法。您应该首先创建Departamento的实例,在该实例上可以调用实例方法add_curso

下面是这样一个代码示例,您首先创建一个Departamento,然后向其中添加一个curso,我想这就是您想要做的:

self = "Engenharia Biomedica"
descricao = "001-1"
codigo_curso = "55"
creditos = "Engenharia"
departamento = !!Missing Value!!
您可以看到它是一个实例方法,因为方法定义中的第一个参数是self(这是一个约定)


关于类方法与实例方法的更多信息:

MAT=Departamento.add_curso(“Matemática”,“002-1”,“30”)
似乎缺少一个参数。可能与欢迎使用SO重复。请花点时间阅读它所包含的链接。阅读您收到的错误消息。告诉我它是怎么说的。
add\u curso
是作为类方法而不是实例方法调用的。但我已经这样做了,不是吗?使用:
Engenharia=departmento(“departmento de Engenharia”,“001”,“Azurém”)
MIEBIOM=departmento。添加_curso(“Engenharia Biomédica”,“001-1”,“55”,“Engenharia”)
是的,但必须使用变量名“Engenharia”而不是类名“departmento”来调用方法:
Engenharia=departmento(“Engenharia部门”、“001”、“Azurém”)MIEBIOM=Engenharia。添加“Engenharia Biomédica”、“001-1”、“55”、“Engenharia”)
self = "Engenharia Biomedica"
descricao = "001-1"
codigo_curso = "55"
creditos = "Engenharia"
departamento = !!Missing Value!!
dep = Departamento("name", "codigo dep", "local")
dep.add_curso("Engenharia Biomédica",'001-1',"55","Engenharia")