repr() オブジェクトの印字可能な表現

最終更新:2026-09-22

repr() オブジェクトの印字可能な表現

repr() はオブジェクトの「公式」文字列表現を返す。理想的には eval() に渡してそのオブジェクトを再構築できる。

カテゴリ組み込み関数
種類組み込み関数
Python バージョンall

📝 構文

repr(object)

⚙️ 引数

object 必須The object to represent.

戻り値:A string representation of the object; ideally eval()-reconstructible, more debugging-oriented than str().

▶ 例

下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:

実行結果:

datetime.datetime(2026, 1, 1, 0, 0)
'hello'
さらに多くのケースは近日公開予定です。

❓ よくある質問

Qrepr() と str() の違いは?
Astr() は人が見やすい形式(print が既定で使用)、repr() は開発者向けの「公式表現」で、できるだけ eval() で再構築できることを目指します。例えば repr('a') は "'a'"(引用符付き)、str('a') は a になります。
Qリストを表示すると文字列要素に引用符が付くのはなぜ?
Aprint はコンテナ内の要素に対し repr() を使うためです。print(['a']) は実際にはリストの repr 形式を表示しており、要素の型を区別しやすくしています。
Qrepr でオブジェクトを本当に再構築できますか?
A組み込み型ならほぼ可能です。eval(repr(x)) で復元できます。カスタムクラスは __repr__ を自分で実装しないと意味がなく、既定ではオブジェクトのメモリアドレスを表示します。
Qf-string では repr をどう使いますか?
A変換フラグを使います。f'{x!r}' は repr(x) と等価で、デバッグ出力でよく !r と組み合わせてオブジェクトの実構造を確認します。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%