+1 from me. after this: "[ x for x in range(10) if is_special(x) ]", to have this ternary construct: "x if is_special(x) else y" seems reasonable enough. Perhaps the "else <expr2>" can default to "else None". Simon Burton.