条件分岐
概要
        
      条件分岐(if, else elif)
        
        if, else, elif
複数条件は、and or notなどで繋ぐ
      
i = 15
if i < 10:
    print("10未満")
elif i < 20:
    print("10以上、20以下")
else:
    print("それ以外")
#=> 10以上、20以下
          複数条件は、and or notなどで繋ぐ
i, j = 10, 15
if i == 10 and j == 10:
    print( "i = 10, j = 10" )
elif i != 10 or j is not 10:
    print( "i != 10 || j != 10" )
#=> i != 10 || j != 10
        Falseと判定されるもの
        
          Pythonでは、以下の要素がFalseになる。
          
・None
・False
・0っぽい数字(0, 0.0, 0jなど)
・空っぽいもの(空文字、空リスト、空タプル、空マッピング、etc)
・__bool__か__len__をFalseか0を返すようにしたクラスのインスタンス
        
      ・None
print( bool(None) ) #=> False
・False
print( bool(False) ) #=> False
・0っぽい数字(0, 0.0, 0jなど)
# 数字の0はFalse
print( bool(0) )
  #=> False
print( bool(0.0) )
  #=> False
print( bool(0j) )
  #=> False
# 文字列はもちろんTrue
print( bool('0') )
  #=> True
          ・空っぽいもの(空文字、空リスト、空タプル、空マッピング、etc)
print( bool("") )
  #=> false
print( bool(()) )
  #=> false
print( bool({}) )
  #=> false
# 中身が入ればTrueになる
list = []
print( bool( list ) )
  #=> False
list.append( "" )
print( bool( list ) )
  #=> True
          ・__bool__か__len__をFalseか0を返すようにしたクラスのインスタンス
class MyClass:
    pass
class FalseClass1:
    def __bool__(self):
        return False
class FalseClass2:
    def __len__(self):
        return 0
# 普通のクラスのインスタンス
print( bool( MyClass() ) )
  #=> True
# __bool__がFalseを返すクラスのインスタンス
print( bool( FalseClass1() ) )
  #=> False
# __len__が0を返すクラスのインスタンス
print( bool( FalseClass2() ) )
  #=> False
# インスタンスではなくクラスを判定した場合はTrue
print( bool( FalseClass1 ) )
  #=> True
          
