'None' is not displayed as I expected in Python interactive mode
<p>I thought the display in Python interactive mode was always equivalent to <code>print(repr())</code>, but this is not so for <code>None</code>. Is this a language feature or am I missing something? Thank you</p>

<pre><code>&gt;&gt;&gt; None
&gt;&gt;&gt; print(repr(None))
None
&gt;&gt;&gt;
</code></pre>

<p><a href="https://docs.python.org/3/library/constants.html#None" rel="nofollow"><code>None</code></a> represents the absence of a value, but that absence can be observed. Because it represents <em>something</em> in Python, its <code>__repr__</code> cannot possibly return <em>nothing</em>; <code>None</code> is not nothing.</p>

<p>The outcome is deliberate. If for example a function returns <code>None</code> (similar to having no return statement), the return value of a call to such function does not get shown in the console, so for example <code>print(None)</code> does not <em>print</em> <code>None</code> twice, as the function <code>print</code> equally returns <code>None</code>.</p>

<p>On a side note, <code>print(repr())</code> will raise a <code>TypeError</code> in Python.</p>

python