首页 > 解决方案 > python中方法的参数如何工作?

问题描述

为什么这种insertfun()方法不适用于主要的测试用例?我是否使用错误的参数或使用我给出的参数在 main 中创建了错误的对象?

class Connection
     def insertfunc(self, ID, REQUESTER, PAGE, DESCRIPTION, NEXT_STEPS, EFFORT, PRIORITY,
                    STATUS, REQ_DATE):
         insert = "INSERT into dash (REQUESTER, PAGE, DESCRIPTION, NEXT_STEPS, EFFORT, PRIORITY, STATUS, REQ_DATE)"
         self.ID = ID
         self.REQUESTER = REQUESTER
         self.PAGE = PAGE
         self.DESCRIPTION = DESCRIPTION
         self.NEXT_STEPS = NEXT_STEPS
         self.EFFORT = EFFORT
         self.PRIORITY = PRIORITY
         self.STATUS = STATUS
         self.REQ_DATE = REQ_DATE
         print("row inserted")
         return insert

if __name__ == "__main__":
     Connection.insertfunc(51,'Michael', 'New Tab', 'TEST', 'NULL', 'NULL', 'NULL', 'NULL', '7/21/2021')

标签: pythonsqlfunctionclassmethods

解决方案


是的,您没有先实例化对象。这就是你的意思:

if __name__ == "__main__":
    c = Connection()
    c.insertfunc(51,'Michael', 'New Tab', 'TEST', 'NULL', 'NULL', 'NULL', 'NULL', '7/21/2021')

推荐阅读