title: How to make a class method in place?
body: <p>Is there a way to make a method in a python class modify its data in place, specifically for lists?</p>
  
  <p>For example, I want to write a function that behave like <code>list.append()</code> by modifying the origonal list instead of returning a new one</p>
  
  <p>I have already</p>
  
  <pre><code>class newlist(list):
       def add(self, otherlist):
            self = self+otherlist
  </code></pre>
  
  <p>A method written like that does not seem to modify the variable it is called on.
  Obviosly, I could add <code>return self</code> at the end, but then it would have to be called with <code>mylist = mylist.add(stuff)</code> to actually modify <code>mylist</code>. How do write the function so it will modify <code>mylist</code> when called with just <code>mylist.add(stuff)</code>? </p>