Python Try-Except: почему он не ловит его?
Я пытаюсь освоить попытку / исключение, и я просто не могу заставить его работать. Я хочу, чтобы это останавливалось для отрицательного или очень большого числа:
try:
h > 0.
except:
return "Your distance (", h, ") is negative"
try:
h < 3700000.
except:
return "Your distance (", h, ") is outside the range this model"
else:
# Return Correct Value:
return g0*(r/(r+h))**2
Тем не менее, он продолжает идти до конца, независимо от того, какое значение я придаю ему... Я пробовал разные вещи после, кроме как ложные и другие вещи, но ни одна из них не работает:
>>> print(earth_gravity(1))
1.0
9.80649692152011
>>> print(earth_gravity(-1))
-1.0
9.806503078481338
1 ответ
Решение
Потому что никаких исключений не возникает. Используйте if
заявление, чтобы проверить правильность условия вместо этого.
if h > 0:
...
elif ...:
...
else:
...