< is the strict subset operator. <= is subset. What more can I say?

On Mon, Mar 23, 2020 at 02:01 Steven D'Aprano <st...@pearwood.info> wrote:

> On Sun, Mar 22, 2020 at 09:49:26PM -0700, Guido van Rossum wrote:
> > On Sun, Mar 22, 2020 at 6:51 PM Steven D'Aprano <st...@pearwood.info>
> wrote:
> >
> > > We might have a terminology issue here, since according to Wikipedia
> > > there is some dispute over whether or not to include the equality case
> > > in subset/superset:
> > >
> > > https://en.wikipedia.org/wiki/Subset
> > >
> > > For what it is worth, I'm in the school that subset implies proper
> subset
> > > [...]
> > >
> >
> > Wikipedia's pedantry notwithstanding, I don't think this is a useful
> > position *when talking about Python sets*, since Python's set's
> .issubset()
> > method returns True when the argument is the same set:
>
> But Python's subset *operator* returns False when the arguments are
> equal:
>
>     py> {1} < {1}
>     False
>
> and until today I did not realise the operator and method used different
> definitions. I'm going to have to review some of my code using sets to
> see if my mistaken understanding that they were the same has introduced
> some hidden bugs :-(
>
> I'm not going to get into an argument about which definition is correct.
> I think the differences between the operators and the methods should be
> better described in the docs, but at least the docs do explicitly note
> that set.issubset is equivalent to the `<=` operator.
>
> (Not the docstring though. You have to read the docs on the website.)
>
> Today I read Wikipedia's pedantry and learned for the first time that
> there are people who define "subset" to include equality. I had not come
> across that before, so I was confused by Steve Jorgensen's talk about
> sets that are similtaneously subsets and supersets of themselves. But
> now that I realise he is talking about *equal* sets, it makes sense.
>
> I'm still confused by his position that there are sets (iterables?)
> which are simultaneously subsets and supersets of each other without
> being equal, but that's a separate issue for him to clarify.
>
>
> --
> Steven
> _______________________________________________
> 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/4CAPJG2EEAYPDQWXJ5PVBXNUZ7GWULER/
> Code of Conduct: http://python.org/psf/codeofconduct/
>
-- 
--Guido (mobile)
_______________________________________________
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/KM2OVDVCDJUEDGVHMNCFPUJG2IBWQE4Z/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to