Re:Python indentation: very nice explanation for the curious...
by andyn on Friday September 21, 2007 @10:32AM
(#57945)
Python 2.5 now lets you do:
f() and g() aren't evaluated till they're needed.
[ Parent
| on HN ]
Re:Python indentation: very nice explanation for the curious...
by brlewis on Friday September 21, 2007 @11:30AM
(#57962)
That syntax looks like it's intended to communicate that f(x) is the normal result, and g(y) is exceptional. I wouldn't want to use it unless that's what I intended to communicate. It also looks like you would need to put parens around the "if" expression if you were to use it within a more complex expression, e.g
2 + (f(x) if a else g(y)) + 3
Re:Python indentation: very nice explanation for the curious...
by nostrademons on Friday September 21, 2007 @11:47AM
(#57968)
And before Python 2.5, people usually used this idiom:
x = a and f(x) or g(y)
If you know the idiom, I think this is more readable (conditional is on the left), though it has the drawback of using completely nonsensical keywords.
Re:Python indentation: very nice explanation for the curious...
by brlewis on Friday September 21, 2007 @01:32PM
(#58005)
I don't think the keywords are nonsensical.
(or (and a (f x))
(g y))