アルファベット ('A、C、G、T') の文字列で構成されるシーケンスの属性を持つ DNA クラスを実装する必要があり、より小さい、より大きいなどの演算子をオーバーロードする必要があります。
ここに私のコードがあります:
class DNA:
def __init__(self, sequence):
self.seq = sequence
def __lt__(self, other):
return (self.seq < other)
def __le__(self, other):
return(self.seq <= other)
def __gt__(self, other):
return(self.seq > other)
def __ge__(self, other):
return(len(self.seq) >= len(other))
def __eq__(self, other):
return (len(self.seq) == len(other))
def __ne__(self, other):
return not(self.__eq__(self, other))
dna_1=DNA('ACCGT')
dna_2=DNA('AGT')
print(dna_1 > dna_2)
問題:
私が代わりにprint(dna_1>dna_2)
戻ってきたとき...なぜですか?False
True