INADA Naoki's argument [1] is succinct and insightful. I feel zero value of non abelian group should not mean False in bool context. () + () == () "" + "" == "" 0 + 0 == 0 timedelta() + timedelta() == timedelta() time() + time() => TypeError [1] https://mail.python.org/pipermail/python-ideas/2014-March/02...
$ python
>>> import time, datetime
>>> () + ()
()
>>> "" + ""
''
>>> 0 + 0
0
>>> datetime.timedelta() + datetime.timedelta()
datetime.timedelta(0)
>>> time.time() + time.time()
27848327051.323207
Seems like time() + time() is not a TypeError in Python.