gpt4 book ai didi

Python - 自引用类(使用魔术运算符的矢量加法)

转载 作者:行者123 更新时间:2023-11-28 21:45:45 25 4
gpt4 key购买 nike

我无法理解此类的自引用在此代码中的工作方式:

class Vector2D:
def __init__(self, x, y):
self.x = x
self.y = y
def __add__(self, other):
return Vector2D(self.x + other.x, self.y + other.y)

first = Vector2D(5, 7)
second = Vector2D(3, 9)
result = first + second
print(result.x)
print(result.y)

--只是为了检查我是否理解魔法方法是如何工作的,在 result = first + second 中,参数 other 指的是 second 对吗?

--编辑:谢谢,我想这消除了我对 other 的困惑。我仍然不明白这条线是如何工作的:return Vector2D(self.x + other.x, self.y + other.y)Vector2D 类里面引用了

最佳答案

是的,这相当于:

result = first.__add__(second)

所以:

  1. selffirst
  2. othersecond
  3. result 是新的 Vector2D

关于Python - 自引用类(使用魔术运算符的矢量加法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38953411/

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