Pythonでクラスオブジェクトをそのまま出力すると、その中身が確認できないことがあります。しかし、Pythonにはクラスオブジェクトの中身を確認するための方法がいくつかあります。
クラスオブジェクトの中身を見る方法①
まず、__str__メソッドを用いる方法があります。以下にその使用例を示します。
class Weather:
def __init__(self, name, weather, temperature):
self._name = name
self._weather = weather
self._temperature = temperature
class StrWeather(Weather):
def __str__(self):
return '地名:%s, 天気:%s, 温度:%d' % (self._name, self._weather, self._temperature)
tokyo = Weather('東京', '晴れ', 25)
str_tokyo = StrWeather('東京', '晴れ', 25)
print(tokyo)
print(str_tokyo)
このコードを実行すると、<__main__.Weather object at 0x10e2b2b20>と地名:東京, 天気:晴れ, 温度:25が出力されます。__str__メソッドを用いることで、クラスオブジェクトの中身を確認することができます。
クラスオブジェクトの中身を見る方法②
次に、vars()関数を用いる方法があります。以下にその使用例を示します。
class Weather:
def __init__(self, name, weather, temperature):
self._name = name
self._weather = weather
self._temperature = temperature
tokyo = Weather('東京', '晴れ', 25)
vars_tokyo = vars(tokyo)
print(tokyo)
print(vars_tokyo)
このコードを実行すると、<__main__.Weather object at 0x10a63fb20>と{'_name': '東京', '_weather': '晴れ', '_temperature': 25}が出力されます。vars()関数を用いることで、クラスオブジェクトの中身を確認することができます。
以上、Pythonでクラスオブジェクトの中身を確認する2つの方法について説明しました。これらの方法を活用することで、Pythonのクラスオブジェクトの理解を深めることができます。