擅长:python、mysql、java
<p>独立Python解释器使用<code>__repr__</code>以可打印格式显示类。示例:</p>
<pre class="lang-none prettyprint-override"><code>~> python3.5
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 5 2015, 21:12:44)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> class StackOverflowDemo:
... def __init__(self):
... pass
... def __repr__(self):
... return '<StackOverflow demo object __repr__>'
...
>>> demo = StackOverflowDemo()
>>> demo
<StackOverflow demo object __repr__>
</code></pre>
<p>在类中未定义<code>__str__</code>方法的情况下,它将调用<code>__repr__</code>函数,试图创建可打印的表示。</p>
<pre class="lang-none prettyprint-override"><code>>>> str(demo)
'<StackOverflow demo object __repr__>'
</code></pre>
<p>此外,默认情况下,类的<code>print()</code>将调用<code>__str__</code>。</p>
<hr/>
<p><a href="https://docs.python.org/3/library/functions.html#repr" rel="nofollow noreferrer">Documentation</a>如果你愿意的话</p>