ダンダ―メソッド

記事
IT・テクノロジー

Import

import operator

str() が呼ばれたときに返す文字列

def __str__(self):
    return 文字列表現

+演算子

def __add__(self, other):
    if not isinstance(other, クラス):
        return NotImplemented
    処理
    return クラス(self._属性1 + other.プロパティ1, ...)
self + other
※ selfの値を変更してはダメ。必ず新しいオブジェクトを作って返すこと

+=演算子

def __iadd__(self, other):
    if not isinstance(other, クラス):
        return NotImplemented
    self._属性1 += other.属性1
    ...
    return self
self を返す

==演算子

def __eq__(self, other):
    return self.属性 == other.属性
def __eq__(self, other):
    return operator.eq(self.属性, other.属性)

!=演算子

def __ne__(self, other):
    return self.属性 != other.属性
def __ne__(self, other):
    return operator.ne(self.属性, other.属性)

サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す