norm_x= (тут каким то чудесным образом объявляется промежуток)
if x!=norm_x:
print('Переменная x за пределом допустимых значений')
In [1]: def x_in_bounds(x, bounds): return bounds[0] < x < bounds[1]
In [2]: if x_in_range(1, (0, 2)): print('in')
in
Функция range() если я правильно понял, не удовлетворит мои потребности.
In [7]: 10 in range(1, 11)
Out[7]: True
In [8]: 1 in range(1, 11)
Out[8]: True
In [9]: 11 in range(1, 11)
Out[9]: False
In [12]: %timeit 5 in range(1, 11)
The slowest run took 4.69 times longer than the fastest. This could mean that an intermediate result is being cached.
1000000 loops, best of 3: 348 ns per loop
In [13]: %timeit 1 <= 5 <= 10
10000000 loops, best of 3: 60.2 ns per loop
min_val, max_val = 1, 10
if min_val <= x <= max_val:
print("...")
def BoundsChecker:
__init__(self, min_val, max_val):
self.min_val = min_val
self.max_val = max_val
def isBounded(self, val):
return self.min_val <= val <= self.max_val
checker = BoundsChecker(1, 10)
if (checker.isBounded(x))
print("...")
x = 5 # любое число из диапазона
range_nums = range(1, 11) # диапазон: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. Т.е последнее значений (11) не учитывается
if x in range_nums:
print(str(x) + " в пределах допустимых значений")
else:
print(str(x) + " за пределом допустимых значений")