Yeah, it's not in the zen of python.  It's a common idiom spurred by it being faster than the naive approach.  For the optimization in your blog post, what happens if the condition is always true?  My understanding is that try; except; would be faster in that case.

I think in cases like this, try; except is more clear as it's showing that one path is deprecated.  (Be sure to stick a comment in either way, though -- after all, in some future time, we'll want to remove the backwards compat stuff altogether.)