Это в Python, но может применяться к любому языку.Можно ли положить код, подверженный ошибкам, в инструкцию OR?
a = None
if (not a) or (a+3==5):
print("Is this okay?")
Это хорошая практика программирования иметь a+3
в заявлении, если, несмотря на то, что это вызовет ошибку, если a
является None
?
Я полагаюсь на or
остановиться перед ошибкой, которая, кажется, как плохая идея для меня в случае a
на самом деле что-то другое, что не поддерживает добавление или or
заявление (в каком-то другом языке) выглядит при обоих значениях.
Что было бы лучшим способом запрограммировать это?
Я хотел бы отметить, что 'if key в словаре и словаре [key]' является довольно распространенным шаблоном. – NightShadeQueen
В вашем примере не будет ошибки, так как не None is True, поэтому условие if немедленно продолжилось, как только оно обнаружило 1 истинное условие, так как это инструкция или. –
Я не знаю, для чего вы его используете, но 'if hasattr (a, '__ add __') ....' может быть то, что вы хотите? – NightShadeQueen