homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author gvanrossum
Recipients eryksun, gvanrossum, mark.dickinson, rhettinger, serhiy.storchaka, tim.peters, tomerv
Date 2019年08月14日.17:42:21
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1565804541.91.0.921807650744.issue37831@roundup.psfhosted.org>
In-reply-to
Content
> > Because bool is embedded in int, it's okay to return a bool value *that compares equal to the int from the corresponding int operation*.
> Agreed that it's okay, but I'd like to understand why it's considered *desirable*. What use-cases benefit from having `x | y` give `True` or `False` rather than `1` or `0` when `x` and `y` are bools? Is the intent that `x & y` and `x | y` provide shorter ways to spell `x and y`, `x or y`, or (as I think Serhiy's suggesting) is this about catering to people coming from other languages and expecting `&` and `|` to be the right operations for doing logic with bools?
> From my integer-centric point of view, | and & are bitwise integer operations, not logical operations; they only *happen* to apply to bool because a bool is an int, but they're not natural boolean operations (in exactly the same way that +, -, *, etc. aren't natural boolean operations). "and" and "or" seem the "one obvious way to do it" for logical operations on bools; I don't think I understand why anyone would want to use | and & on bools to get another bool, instead of just using `or` and `and`.
For one thing, you can override `&` and `|` but you can't override `and` and `or`.
Probably when we introduced book we should have thought harder about it, but I don't think we should change anything at this point, so I'm not sure why whether it's worth trying to uncover the original deep motivations (probably they weren't so deep).
History
Date User Action Args
2019年08月14日 17:42:21gvanrossumsetrecipients: + gvanrossum, tim.peters, rhettinger, mark.dickinson, serhiy.storchaka, eryksun, tomerv
2019年08月14日 17:42:21gvanrossumsetmessageid: <1565804541.91.0.921807650744.issue37831@roundup.psfhosted.org>
2019年08月14日 17:42:21gvanrossumlinkissue37831 messages
2019年08月14日 17:42:21gvanrossumcreate

AltStyle によって変換されたページ (->オリジナル) /