title: How do I use __repr__ with multiple arguments?
body: <p>(Python 3.5.2)</p>
  
  <p>I have defined <code>__repr__</code> for one of my classes as follows:</p>
  
  <pre><code>class d():
      def __init__(self):
          self._values = []
          return
      def __pos__(self):
          return self._values[0]
      def __repr__(self, value):
          self._values.append(value)
          return
  </code></pre>
  
  <p>Now I want</p>
  
  <pre><code>x = d()
  print(x,"a")
  print(+x)
  </code></pre>
  
  <p>to return</p>
  
  <p><code>a</code></p>
  
  <p>but instead I get</p>
  
  <p><code>TypeError: __repr__() missing 1 required positional argument: 'value'</code></p>
  
  <p>I've tried a few variations such as <code>print(x),"a"</code> with no luck.</p>