关于python:python – 自我要求的位置参数

python - self - required positional argument

本问题已经有最佳答案,请猛点这里访问。

这是我的代码:

我的文件,我开始:

1
2
 from SQLhandler import SQLhandler
 D = SQLhandler.loadProject(4711)

我的sqlhandler文件的一部分:

1
2
3
4
5
class SQLhandler(object):
   db = pymysql.connect(... )

   def loadProject(self, project_id):
    #do some stuff

我想在其他函数中使用db,所以我将它放在类级别,并向loadproject添加了一个"self"。现在,我的开始文件中的第二行引发了一个错误:

1
"loadProject() missing 1 required positional argument: 'project_id'"

我的代码怎么了?


在类定义中,您需要有一个def __init__(self, ... params):函数,它告诉您如何初始化一个新实例。试着包括一些符合

1
2
def __init__(self, project_id):
    self.project_id = project_id