Is this horrible python code?
Christian Seberino
seberino at spawar.navy.mil
Wed Nov 5 17:08:26 EST 2003
I'd be happy to help except I cannot decipher what you are asking.
Chris
"Matthew" <matthew at newsgroups.com> wrote in message news:<bobklj$umm$1 at lust.ihug.co.nz>...
> Sorry, I should add that the code fragment below is just trying to work out
> howto construct the python object to hold the runnable and its information.
> To test I fudged what would be the results of parsing in 'my_func' and
> 'another' in __main__.
> ----- Original Message -----
> From: "Matthew" <matthew at newsgroups.com>
> Newsgroups: comp.lang.python
> Sent: Thursday, November 06, 2003 8:47 AM
> Subject: Is this horrible python code?
>
>
>
> "Matthew" <matthew at newsgroups.com> wrote in message
> news:bobjp2$u73$1 at lust.ihug.co.nz...
> > Hi,
> >
> > I am working on a small project as well as trying to learn python. I parse
> a
> > text file like
> >
> > def some_user_func():
> > # <name> Some user function
> > #<description> The description
> > pass
> >
> > so that 'name', 'description' get put into self.info and the code gets
> > compilied into a runnable function in self.func. This works but is it
> > pythonic?
> > Thanks alot for helping out! matthew.
> >
> > def print_message():
> > print "I am a message"
> >
> > def print_num(num=0):
> > print 'Number: ', num
> >
> > class call_me(object):
> > def __init__(self, func, *args, **kw):
> > self.func = func
> > self.args = args
> > self.kw = kw
> > def __call__(self, *args, **kw):
> > print "Execing..."
> > return self.func(*self.args, **self.kw)
> >
> > class a_func(object):
> > def __init__(self, func, info = {}): # name, description, authour, etc
> > self.func = func
> > self.info = info
> > print 'finished a_func.__init__()'
> > def __call__(self):
> > print self.info
> > self.func()
> > print 'exiting a_func.__call__()'
> >
> > my_func = a_func(call_me(print_message),{'name': 'Print a message'})
> > my_func()
> > another = a_func(call_me(print_num, 42), {'name': 'Print a number'})
> > another()
> >
> >
More information about the Python-list
mailing list