Pythonのrepr関数は、オブジェクトを文字列形式で表現するための関数です。この関数は主にデバッグ時に使用され、eval()関数を使って元のオブジェクトに戻せる文字列を生成します。
具体的な使用例を見てみましょう。
import datetime
# 現在の日付を取得
today = datetime.date.today()
# str関数とrepr関数の違いを確認
print(str(today)) # '2018-04-12'
print(repr(today)) # 'datetime.date(2018, 4, 12)'
# repr関数の出力をeval関数で評価
x = eval(repr(today))
# 元のオブジェクトと評価結果を比較
print(today - x) # datetime.timedelta(0)
このコードでは、str(today)がユーザーが読みやすい形式で日付を表示し、repr(today)がdatetime.dateオブジェクトを生成するPythonのコードを表示しています。そして、eval(repr(today))により、repr関数の出力から元のdatetime.dateオブジェクトを再生成しています。
このように、repr関数はオブジェクトの内部状態を詳細に表示するための便利なツールであり、デバッグ時に非常に役立ちます。
以上がPythonのrepr関数の基本的な使い方になります。この関数を理解し、適切に使用することで、Pythonプログラミングの幅が広がります。.