On 2/24/21 12:34 PM, Chris Angelico wrote: > On Thu, Feb 25, 2021 at 4:28 AM Barry Scott <ba...@barrys-emacs.org> wrote: >> >> >> On 23 Feb 2021, at 22:10, Steven D'Aprano <st...@pearwood.info> wrote: >> >> There are exactly 2**4 = 16 boolean operators of two variables. Python >> only supports two: `and` and `or`. Plus a single unary operator `not` >> (out of four possible unary operators). What makes xnor so special that >> you want it to be an operator? >> >> >> Python implements more then 2 of them: >> >> True >> False >> not >> and >> or >> >> https://en.wikipedia.org/wiki/Boolean_algebras_canonically_defined#Truth_tables >> > True and False aren't operators in Python. Notionally you could say > that "take any input(s) and return True" could be considered an > operator in theory, but you can't write "x True y" to achieve that in > Python. > > ChrisA
True, but you aren't really going to define real operators in a language that always ignore one or both of their arguments. Thus, of the 16 theoretical operators in the list, the 6 that don't depend on both values aren't going to get a real operator, and if you actually want that operation, you do have a 'spelling' in Python for it. -- Richard Damon _______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/JGI4BCKWGOARIXRC55FAJN6AENH4IXLI/ Code of Conduct: http://python.org/psf/codeofconduct/