Python.use(better) 特殊メソッド __repr__

記事一覧 Python.use(better)《Python3.1》

特殊メソッド __repr__

《著》小粒ちゃん+∞《監修》小泉ひよ子とタマゴ倶楽部
第0版♪2001/03/02 ● 第1版♪2003/05/25 ● 第2版♪2004/06/01 ● 第3版♪2009/02/28

特殊メソッド __repr__

メソッド __repr__ は、組み込み関数 repr に呼応して、オブジェクトに固有の文字列表現を与えます。

■ 全項目を確認する

全ステップの「項目」を確認するには、関数 do を利用します。

$ python -i special_method.py
>>> do()
0: step00 -- @
...
>>>
■ 各項目を実行する

各ステップの「動作」を確認するには、関数 do に実引数を指定します。

>>> do(@)
>>> # -------------------------------------------------- tips_repr
>>> s = Tips(); s                     #1:
<__main__.Tips object at 0x12bdb10>
>>> s = Tips(); s                     #2:
Tips

事例:コードの解説

    class Tips(object): pass

メソッド __repr__ を定義しないと、

>>> s = Tips(); s                     #1:
<__main__.Tips object at 0x12bdb10>

あらかじめ規定された文字列表現で、インスタンス s に関する情報が出力されます。

■ メソッド __repr__ を定義する
    class Tips(object):
        def __repr__(self):
            return self.__class__.__name__

メソッド __repr__ を定義すると、

>>> s = Tips(); s                     #2:
Tips

オブジェクトに固有の文字列表現として、インスタンス s が属するクラスの名前が出力されます。


》こちらに移動中です《
TOP


関連記事

Last updated♪2009/10/27