首页 > 解决方案 > Python程序不工作..主要部分一直显示错误

问题描述

class point:
    def __init__(self,z,d):
        self.x = z
        self.y = d
    def display(self,z,d):
        self.x = self.z
        self.y = self.d
    def setX(self, z):
        self.x = z
    def setY(self, d):
        self.y = d
    def getX(self):
       return self.x
    def getY(self):
       return self.y
    def show(self):
       print(self.x)
       print(self.y)

p1 = point() //error
print("Point P1:")
p1.show()
print("Updated value:")
p1.display(5, 6)
p1.setX(9)
p1.setY(4)
p1.show()
print("Point P2:")
p2=point()
p2.setX(9)
p2.setY(4)
p2.show()
print("Updated value:")
p2.display(6, 3)
p2.show()

我的程序不断向我显示对象部分中缺少 z 和 d 的错误,我不知道如何纠正它,我一直在尝试,但更多的错误不断出现。

Traceback (most recent call last):
  File "P:\xxxyyy.py", line 29, in <module>
    p1 = point() //error
TypeError: __init__() missing 2 required positional arguments: 'z' and 'd'

标签: pythonoop

解决方案


不要忘记传入z和传入d构造函数,例如:

p1 = point(1,2)

此外,在display函数中,您尝试设置self.xtoself.zself.yto self.dself.z并且self.d不存在(self 意味着它应该是一个类属性,但它不是),您应该改用函数的输入参数:

self.x = z
self.y = d

推荐阅读