if i>0 : return sqrt(i)
elif i==0: return 0
else : return 1j * sqrt(-i)
VS
if i>0:
return sqrt(i)
elif i==0:
return 0
else:
return 1j * sqrt(-i)
Teniendo en cuenta los ejemplos anteriores, no entiendo por qué virtualmente nunca veo el primer estilo en bases de código. Para mí, usted convierte el código en un formato tabular que muestra claramente lo que quiere. La primera columna puede ser virtualmente ignorada. La segunda columna identifica la condición y la tercera columna le da el resultado que desea. Parece, al menos para mí, sencillo y fácil de leer. Sin embargo, siempre veo que este tipo simple de caso / situación de cambio se presenta en el formato extendido de tabulación. ¿Porqué es eso? ¿La gente encuentra el segundo formato más legible?
El único caso en el que esto podría ser problemático es si el código cambia y se alarga. En ese caso, creo que es perfectamente razonable refactorizar el código en un formato largo y sangrado. ¿Todos lo hacen de la segunda manera simplemente porque así se hizo siempre? Siendo un defensor del diablo, supongo que otra razón podría ser porque las personas encuentran dos formatos diferentes según la complejidad de las afirmaciones if / else para ser confusas. Cualquier apreciación sería apreciada.