Am 09.11.2013 14:27 schrieb Joshua Landau:
`select` is quite an odd statement, in that in most cases it's just a weaker variant of `if`. By the time you're at the point where a `select` is actually more readable you're also at the point where a different control flow is probably a better idea. Things like dictionaries or a variables pointing to functions are really useful and can be encapsulated in a class quite well. This is a bit more advanced but largely more rigorous.
class Switch(object): def __init__(self, value): self.value = value self.called = False def case(self, other): def wr(func): if not self.called and self.value == other: self.called = True return func(self.value) return wr def default(self, func): if not self.called: self.called = True return func(self.value) if __name__ == '__main__': import random while 1: n = random.randrange(0, 5) sw = Switch (n) @sw.case(1) def _(n): print n, "is one" @sw.case(2) def _(n): print n, "is two" @sw.default def _(n): print n, "is something else" -- https://mail.python.org/mailman/listinfo/python-list