On Wed, May 21, 2008 at 8:27 AM, Eric Abrahamsen <[EMAIL PROTECTED]> wrote: > Hi all, > > This is a syntax that I've seen on occasion in other people's code: > > theme = (VALID_THEMES[0], theme) [ theme in VALID_THEMES ] > > I have no idea how this works, or how to go about looking it up.
This is one way to implement a conditional expression in Python < 2.5. In general, the expression (A, B)[bool(C)] has the value A if bool(C) is false and B if bool(C) is true. The boolean value is either 0 or 1. It is used as an index into the tuple to select the desired value. In Python 2.5 this can be written with the condition expression B if C else A or to use your example theme = theme if (theme in VALID_THEMES) else VALID_THEMES[0] Kent _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor