retry in try:...except:
Tim Peters
tim.one at home.com
Sun Feb 11 15:57:39 EST 2001
[Dan Parisien]
> Does something like this exist
>
> def getval(self, key)
> try:
> return self.__keys[key]
> except KeyError:
> self.__keys[key] = None
> retry #!!!!
No. In this specific case, you could get the effect you're after by
replacing "retry" with "return self.getval(key)". Then if you screw up,
you'll eventually get a nice "maximum recursion depth exceeded" error
instead of an infinite loop <0.5 wink>. Slicker, replace the whole body
with:
return self.__keys.setdefault(key, None)
or (more obscure to my eyes):
return self.__keys.setdefault(key)
python-isn't-keen-for-magical-control-flow-ly y'rs - tim
More information about the Python-list
mailing list