"Brian van den Broek" <[EMAIL PROTECTED]> said:
Marc Gartler said unto the world upon 2004-12-14 18:12:
Hi all,
I am fairly new to both Python & programming, and am attempting to create a function that will test whether some user input is an integer between 10 and 89, but the check isn't happening...
def check_range(myrange): if range(myrange) != range(10,89): return "False" else: return "True"
...this gets called later via: if check_range(input): done = "True" return int(input)
[...]
I have a some style suggestions for you, too.
Try it this way:
def check_in_range(value):
in_range = False if 9 < value < 90: in_range = True return in_range
Shorter: def check_in_range(value): return 9 < value < 90
Indeed. Good one. I never seem to think of such very direct ways, but there you have it. It might say more about my psychology than anything else, but I think I'd be tempted to put a brief comment on that code. (Such as # returns True if the test, False otherwise.) My guess is that if I had to read it more than twice, the time spent writing the comment would be more than regained in spending less time scratching my head. This might also be a matter of little experience, too.
At any rate, I certainly would agree that yours is bound to be better in any situation where speed of execution mattered a lot.
Best,
Brian vdB
_______________________________________________ Tutor maillist - [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/tutor