On Thu, Jun 23, 2016 at 10:37 PM, Steven D'Aprano <st...@pearwood.info> wrote: > I acknowledge, cheerfully, that there might be a mismatch between what you > expect and what the object actually does. "I expect empty containers to be > falsey, and non-empty ones to be truthy; but this RedBlackTree object is > always false even if it has many items; and this SortedDict is always true > even when it is empty." > > That's a nuisance and a pain when it happens, but it's arguably a bug in the > object or at least a misfeature...
As evidenced by the change to time truthiness, yes, that's the object's fault. If your RedBlackTree object were always *true*, I'd call it a missing feature ("please add a __bool__ that distinguishes empty trees from trees with content"), but always *false* would be a bug. A SortedDict implies by its name that it should be extremely dict-like, so that would be a strong argument for its truthiness to follow a dict's. Either way, the misbehaviour gets pointed back at the object in question. ChrisA -- https://mail.python.org/mailman/listinfo/python-list