title: Method chaining in python results in an error
body: <p>I thought in Python I am allowed to perform method chaining.</p>
  
  <pre><code>basket = [1,3,2,4,6,8]
  
  basket.append(7)
  basket.sort()
  basket.reverse()
  </code></pre>
  
  <p>This works.</p>
  
  <pre><code>basket.append(7).sort().reverse()
  </code></pre>
  
  <p>This does not. </p>
  
  <pre><code>AttributeError: 'NoneType' object has no attribute 'sort'
  </code></pre>
  
  <p>I am not sure what is going on here, but I assume that happens because in place methods result in "NoneType" <code>result = basket.sort()</code> and therefore the second method will be performed on the result and not the original object. </p>
  
  <p>Can anyone help me how to do these operations without writing a new line for each method?</p>