How to create functors?

Duncan Booth duncan.booth at invalid.invalid
Tue Aug 18 16:31:51 EDT 2009


Robert Dailey <rcdailey at gmail.com> wrote:

> Hello,
> 
> I want to simply wrap a function up into an object so it can be called
> with no parameters. The parameters that it would otherwise have taken
> are already filled in. Like so:
> 
> 
>       print1 = lambda: print( "Foobar" )
>       print1()
> 
> However, the above code fails with:
> 
>   File "C:\IT\work\distro_test\distribute_radix.py", line 286
>     print1 = lambda: print( "Foobar" )
>                          ^
> SyntaxError: invalid syntax
> 
> How can I get this working?

def print1():
    print "Foobar"

It looks like in your version of Python "print" isn't a function. It always 
helps if you say the exact version you are using in your question as the 
exact answer you need may vary.



More information about the Python-list mailing list