__str__
ストラー(関数とクラス)
意味 文字列で表現
__str__とは?
オブジェクトを文字列として表現する際に使用される特殊なメソッド。print関数などでオブジェクトを表示する際に、分かりやすい文字列を返すように定義します。
__str__の具体的な使い方
ユーザーフレンドリーな文字列表現
class Book:
def __init__(self, title, author, year):
self.title = title
self.author = author
self.year = year
def __str__(self):
return f'"{self.title}" by {self.author} ({self.year})'
my_book = Book('Python入門', '山田太郎', 2023)
print(my_book)
👇出力結果
"Python入門" by 山田太郎 (2023)
Bookクラスを定義し、__str__メソッドで本のタイトル、著者、出版年を人間が読みやすい形式で返すように実装しています。printでオブジェクトを出力すると、この__str__メソッドが呼び出され、カスタマイズされた文字列が表示されます。
コレクション内のオブジェクト表示
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def __str__(self):
return f'({self.x}, {self.y})'
points = [Point(1, 2), Point(3, 4), Point(5, 6)]
print('点の一覧:')
for point in points:
print(point)
👇出力結果
点の一覧:
(1, 2)
(3, 4)
(5, 6)
Pointクラスを定義し、__str__メソッドで座標を(x, y)の形式で返すように実装しています。複数のPointオブジェクトをリストに格納し、forループで各オブジェクトを出力しています。各オブジェクトの__str__メソッドが自動的に呼び出され、読みやすい形式で座標が表示されます。
__str__に関するよくある質問
__str__が学べる書籍の紹介
「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Pythonの__str__やassert、__next__、def、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。
よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。
HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。
Pythonを学べる「プログラミング単語帳」アプリ
プログラミング単語帳がアプリになりました!Pythonはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。
収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。
いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。
2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!
2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!