if i>0 : return sqrt(i)
elif i==0: return 0
else : return 1j * sqrt(-i)
В.С.
if i>0:
return sqrt(i)
elif i==0:
return 0
else:
return 1j * sqrt(-i)
Учитывая приведенные выше примеры, я не понимаю, почему я практически никогда не вижу первый стиль в базах кода. Для меня вы превращаете код в табличный формат, который ясно показывает, что вы хотите. Первый столбец можно практически игнорировать. Во втором столбце указывается условие, а в третьем столбце выводится требуемый результат. Кажется, по крайней мере, мне, прямолинейным и легко читаемым. Тем не менее, я всегда вижу, как эта простая ситуация с переключателем регистров появляется в расширенном формате с отступом табуляции. Почему это? Находят ли люди второй формат более читабельным?
Единственный случай, когда это может быть проблематично, это если код изменяется и становится длиннее. В этом случае я думаю, что вполне разумно реорганизовать код в длинный формат с отступом. Все ли делают это вторым способом просто потому, что так было всегда? Будучи защитником дьявола, я полагаю, что еще одна причина может заключаться в том, что люди находят два разных формата в зависимости от сложности утверждений if / else, чтобы сбивать с толку? Любое понимание будет оценено.
if
той же строки.