私はPython 3.6を使用しており、Intervalクラスを作成したいと考えています。私は整数とインターバルを追加できるaddメソッドを実行しようとしています。これまで私は ためI =インターバル(2,3) C = I + 1#Cは= [3,4]クラスとメソッドpython
しかし反対dosent仕事
I =間隔を動作するコードを生成するために、管理しました(2,3) C = 1 + Iは、エラーメッセージはTypeError #get:+ためにサポートされていないオペランドタイプ(複数可): 'INT' と '間隔'
をfolowとして私のクラスおよびメソッドのための私のコードでありますクラス間隔:
def __init__(self,start=None,end=None):
if end==None:
end=start
if start==None:
start=end
if start>end:
raise TypeError('left value must be smaller than right value')
self.start=start
self.end=end
DEF は(自己、他)を追加します。
if isinstance(other,int):
s2,e2=other,other
s1,e1=self.start,self.end
elif isinstance(self,int):
s1,e1=self,self
s2,e2=other.start,other.end
else:
s2,e2=other.start,other.end
s1,e1=self.start,self.end
return Interval(s1+s2,e1+e2)
私は何も機能しない場合にaddメソッドの私のelifを変更しようとした場合。誰もこれを解決する方法を知っていますか?
ありがとうございました!
ありがとうございます!これはraddメソッドで動作します! –
あなたは大歓迎です。 –