How do I say "Is this a function"?

Martin P. Hellwig xng at xs4all.nl
Sat Apr 26 21:03:21 EDT 2008


John Henry wrote:
> How do I determine is something a function?
> 
> For instance, I don't want to relying on exceptions below:
> 
> def f1():
>    print "In f1"
> 
> def f3():
>    print "In f3"
> 
> def others():
>    print "In others"
> 
> for i in xrange(1,3):
>    fct = "f%d()"%(i+1)
>    try:
>       exec fct
>    except:
>       others()
> 
> I wish to say:
> 
>    if value of fct is a funtion, invoke it, otherwise invoke others().
> 
> Thanks,

One way I would think of is:
str(type(fct)) == "<type 'function'>"

-- 
mph



More information about the Python-list mailing list