On 2015-09-30, alister <alister.nospam.w...@ntlworld.com> wrote: > On Tue, 29 Sep 2015 18:44:33 -0500, Tim Chase wrote: > >> On 2015-09-29 21:32, Mark Lawrence wrote: >>> On 29/09/2015 17:48, Rob Gaddi wrote: >>> >> Is there any similar elegant way to check if a value is out of >>> >> certain range? >>> >> Example - To check if x is either less than zero or greater than >>> >> ten? Right now I am using x < 0 or x > 10. >>> > >>> > not (0 <= x <= 10) >>> >>> Yuck. >> >> Not sure there's much "yuck" to be had there. It's succinct, easy to >> read, and correct. The only improvement might be if you have things to >> do in both cases, in which case remove the "not" and set the clauses >> accordingly: >> >> if 0 <= x <= 10: >> success_within_range(x) >> else: >> fail_out_of_bounds(x) >> >> -tkc > > I would stick with the OP's current solution > > Readability Counts!
I'm baffled. If the condition we are trying to check for is when "x is not within a range of 0-10 inclusive" then this is as readable as it gets: not (0 <= x <= 10) (I) That's pretty much a literal, word-for-word translation of the requirement into code. Sure, you can can apply De Morgans theorom to transform that into (x < 0) or (x > 10) (II) That's just as correct, but now the code is one step removed from the requirement statement. IMO, (I) is _more_ readable than (II) -- Grant Edwards grant.b.edwards Yow! Boy, am I glad it's at only 1971... gmail.com -- https://mail.python.org/mailman/listinfo/python-list