Pythonic way to do static local variables?
Jaime Wyant
programmer.py at gmail.com
Mon Apr 25 22:30:18 EDT 2005
Well, if you're a c++ programmer, then you've probably ran into
`functors' at one time or another. You can emulate it by making a
python object that is `callable'.
class functor:
def __init__(self):
self.ordered_sequence = [1, 2, 3, 4, 5]
def __call__(self, arg1, arg2):
self.ordered_sequence.extend((arg1,arg2))
self.ordered_sequence.sort()
>>> f = functor()
>>> f(3,5)
>>> f.ordered_sequence
[1, 2, 3, 3, 4, 5, 5]
Hope that helps some.
jw
On 4/25/05, Charles Krug <cdkrug at worldnet.att.net> wrote:
> I've a function that needs to maintain an ordered sequence between
> calls.
>
> In C or C++, I'd declare the pointer (or collection object) static at
> the function scope.
>
> What's the Pythonic way to do this?
>
> Is there a better solution than putting the sequence at module scope?
>
> Thanks.
>
> --
> http://mail.python.org/mailman/listinfo/python-list
>
More information about the Python-list
mailing list