<br><br><div><span class="gmail_quote">On 3/8/06, <b class="gmail_sendername">w chun</b> &lt;<a href="mailto:wescpy@gmail.com">wescpy@gmail.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
&gt; def switch(choice, functions = [cf0, cf1, cf2, cf3])<br><br><br>should we really be showing folks using a mutable object as a default<br>argument? ;-)<br><br>i'd suggest: (1) changing it to a tuple, or (2) None and figure it out
<br>after that.</blockquote><div><br>
I prefer dicts for this sort of thing. That way &quot;choice&quot; could be
something meaningful. For example, I recently wrote a python script
showing how different sorting algorithms work (for my discrete math
class). I have a dict of algorithms, something like (I'm typing from
memory before my first cup of coffee - go gentle on me): <br>
<br>
algs = {'quick':quicksort, 'merge':mergesort, &quot;insert&quot;: insertionsort} <br>
choice = &quot;quick&quot; # however we get the choice..eg from the command line. <br>
if choice in algs:<br>
&nbsp;&nbsp;&nbsp; choice(datatosort)<br>
...<br>
<br>
I really like not having to remember order. This way, I get the right
function easily. And I can print out the list of keys to remind me
which functions are available.<br>
<br>
Anna<br>
</div></div><br>