作者: 機械伯爵
日時: 2002/3/5(15:51)
 ども、機械です。

> Python のインデントについて良く分かっていないのですが、
> Python のインデントの強制は複数人による開発において
> コーディングスタイルを統一しなくても良いということに
> つながるでしょうか?

 コーディングスタイルを完全に強制するなら、たとえば往来の
古典言語FORTRANや、ラベルを使わない正式のBASICのような形に
なるわけですが、Pythonは確かにそこまで強制はしていません。

 とはいえ、ブロックはインデントして表現する、ということが
規則になっていますので、少なくともブロック構造については
見やすくなると思うわけですが。

> 以下のようなインデント幅を揃えないコードが OK ならば
> インデントを強制しているといってもそれほどメリット
> ない気もしているのですが…。

 別段、複数人数開発でなくとも、私は自分のコードの中で
インデント幅を変えることはしょっちゅう行います。

ex)

class TestClass:
    def __init__(self):
      self.n = 0
    def __call__(self,v=None):
      if v == None:
        return self.n
      else:
        self.n = v

 インデントの強制は、インデント幅によってネストの深さを
見るためではありません(できませんわな、んなこと)

 コードの中でブロック構造がしっかり視覚化することが目的だと
思われます。

 よって、インデント幅が自由に設定できることによって、その
効果(視覚化)が薄れるとは、私は思えないのですが、いかがで
しょう?

 機械伯爵