僕がデータ分析者として覚醒するまで

しがない会社員がデータ分析者として覚醒するまでのブログ

Python_特殊メソッド__str__

概要

  • datetime.date(2019,5,21)をインスタンス化した後に、print(instance)で文字列が返ってくるのが気になった。

コード

class testclass:
    def __init__(self,val1,val2,val3):
        self.year = val1
        self.month = val2
        self.day = val3
        
    def __str__(self):
        print('OK')
        return str(self.year) + '-' + str(self.month) + '-' + str(self.day)

aa = testclass(2019,11,1)

print(aa)
>> 2019-11-1

賢くなった点

  • __init__は割とよく使うけど、__str__を初めて使った。
  • 今までいちいち関数にprint書いてたけど、書かなくてよくなった。