ฉันยังใหม่กับงูหลามและเข้าชนกำแพง ฉันติดตามหลายบทเรียน แต่ไม่สามารถแก้ไขข้อผิดพลาดได้:
Traceback (most recent call last):
File "C:\Users\Dom\Desktop\test\test.py", line 7, in <module>
p = Pump.getPumps()
TypeError: getPumps() missing 1 required positional argument: 'self'
ฉันตรวจสอบบทเรียนหลายอย่าง แต่ดูเหมือนจะไม่แตกต่างจากรหัสของฉัน สิ่งเดียวที่ฉันนึกได้ก็คือ python 3.3 ต้องใช้ไวยากรณ์ต่างกัน
หลัก scipt:
# test script
from lib.pump import Pump
print ("THIS IS A TEST OF PYTHON") # this prints
p = Pump.getPumps()
print (p)
คลาสปั๊ม:
import pymysql
class Pump:
def __init__(self):
print ("init") # never prints
def getPumps(self):
# Open database connection
# some stuff here that never gets executed because of error
ถ้าฉันเข้าใจถูกต้อง "ตัวเอง" จะถูกส่งไปยังตัวสร้างและวิธีการโดยอัตโนมัติ ฉันทำอะไรผิดที่นี่
ฉันใช้ windows 8 กับ python 3.3.2