プログラミング私は、PythonのOOPプログラミングに新しいです。私は(演算子のオーバーロードにスクロールダウン)hereから演算子をオーバーロードする上でこのチュートリアルをやっていました。私はこのコードを理解できませんでした。誰かがこれについて詳しく説明してくれることを願っています。正確に言うと、私はどのように理解していなかったここに追加された2つのオブジェクトであり、ラインここでやっPythonのOOPは
def __str__(self):
return 'Vector (%d, %d)' % (self.a, self.b)
def __add__(self,other):
return Vector(self.a + other.a, self.b + other.b)
は何ですか?
#!/usr/bin/python
class Vector:
def __init__(self, a, b):
self.a = a
self.b = b
def __str__(self):
return 'Vector (%d, %d)' % (self.a, self.b)
def __add__(self,other):
return Vector(self.a + other.a, self.b + other.b)
v1 = Vector(2,10)
v2 = Vector(5,-2)
print v1 + v2
これは、出力ベクトル(7,8)を生成します。オブジェクトv1とv2はここでどのように追加されますか?
[特殊メソッド名](https://docs.python.org/3/reference/datamodel.html#special-method-names) – wwii
これらのような状況では、コードをステップバイステップで実行するのが良い方法です、デバッガで。それはあなたが思っていたよりもはるかに多くの情報を明るくします。基本的には、各操作が何をしているのかを見て回ります。 –