gpt4 book ai didi

python - 在python中创建对象时如何调用对象的方法?

转载 作者:太空宇宙 更新时间:2023-11-04 08:31:52 24 4
gpt4 key购买 nike

我有一个问题,但我不知道如何解释它,所以让我在这里放一些代码:

class 2DVector:
def __init__(self, x, y):
self.x = x
self.y = y

def multiply(self, scalar):
self.x *= scalar
self.y *= scalar

是否可以做这样的事情

vector1 = 2DVector(1, 1).multiply(3)
# x == 3, y == 3

还是我总是必须这样做

vector2 = 2DVector(1, 1)
# x == 1, y == 1
vector2.multiply(3)
# x == 3, y == 3

最佳答案

multiply 方法的末尾添加 return self 允许您使用第一个选项:

class TwoDVector:
def __init__(self, x, y):
self.x = x
self.y = y

def multiply(self, scalar):
self.x *= scalar
self.y *= scalar
return self


if __name__ == '__main__':
vector = TwoDVector(2, 3).multiply(2)
# vector.x == 4, vector.y == 6

关于python - 在python中创建对象时如何调用对象的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52312115/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com