can a method call be chained to the 'set()' built-in? (and why not?)
<p>If I try:</p>

<pre><code>mi_list = ['three', 'small', 'words']
mi_set = set(mi_list)
mi_set.remove('small')
print mi_set
</code></pre>

<p>I get:  </p>

<pre><code>set(['three', 'words'])
</code></pre>

<p>which is what I expect. Whereas If I try:  </p>

<pre><code>mi_list = ['three', 'small', 'words']
mi_set = set(mi_list).remove('small')
print mi_set
</code></pre>

<p>I get: </p>

<pre><code>None
</code></pre>

<p>Why?</p>

<p>I suspect there's a clue in that if I try to remove an element that isn't present - eg 'big' - an error gets reported:</p>

<pre><code>KeyError: 'big'
</code></pre>
