Pythonの変わった言語仕様に関してメモ
ブール演算
and, orを使用すると、整数の1, 0(True, False)ではなく、オペランドのオブジェクトが戻されて、True, Falseが表現される。
>>> 2 < 3, 3 < 2 (1, 0) >>> 2 or 3, 3 or 2 (2, 3) >>> [] or 3 3 >>> [] or {} {}
whileとforにelseが使える
>>> seq = (1, 2, 3) ... for v in seq: ... if v == 5: ... print 'found!' ... break ... else: ... print 'not found!' ... not found!
elseは、breakしないで、forがFalseになった場合に通るので、分岐するためには、breakは必須かも。ちなみに、上記の場合は、in演算子を使用した方が簡単だが、あくまでサンプルということで。