[Tutor] Iterating over list of functions

Christian Witts cwitts at compuscan.co.za
Wed May 20 16:44:34 CEST 2009


Robert Berman wrote:
> Hi,
>
> Given a list of options: option_1.......option_n. For each option I have
> a corresponding function: func_1..... func_n. I have all function names
> defined in a list similar to flist = [func_1, func_2,.......func_n]
> which I know is a legitimate construct having found a similar  construct
> discussed by Kent Johnson in 2005.
>
> What I do not know how to do is to call the selected function. If the
> index of options is 1, then I want to call func_2; do I code
> flist[index]? I do not think Python has a branch indirect construct so I
> cannot use anything similar to that methodology.  What is the best
> approach to take to solve this problem?
>
> Thank you for any assistance, hints, solutions, and guidelines.
>
> Robert
>
>
>
>
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
>   
Why not use a dictionary to do the heavy lifting for you

 >>> import string
 >>> funcs = {1:string.upper, 2:string.lower}
 >>> funcs[1]('this is a simple test')
'THIS IS A SIMPLE TEST'
 >>> funcs[2]('THIS IS A SIMPLE TEST')
'this is a simple test'

-- 
Kind Regards,
Christian Witts




More information about the Tutor mailing list