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)
上記の例を考えると、コードベースに最初のスタイルがほとんど見られない理由がわかりません。私には、コードを表形式に変換して、必要なものを明確に示します。最初の列は事実上無視できます。2列目は状態を示し、3列目は必要な出力を示します。少なくとも私には、簡単で読みやすいようです。それでも、この単純なケース/スイッチの状況は、拡張されたタブインデント形式で常に表示されます。何故ですか?人々は2番目の形式をより読みやすいと感じていますか?
これが問題になる唯一のケースは、コードが変更されて長くなる場合です。その場合、コードを長いインデントされた形式にリファクタリングすることは完全に合理的だと思います。いつもそれがいつも行われていた方法だからという理由だけで、誰もが2番目の方法でそれをしますか?悪魔の擁護者である私は、if / elseステートメントの複雑さに応じて2つの異なる形式を見つけて混乱する別の理由があると思いますか?どんな洞察もいただければ幸いです。
if
同じ行にあるif の中にあるステートメントにブレークポイントを置くことはできません。