On Sat, Aug 15, 2020 at 8:02 PM Todd <toddr...@gmail.com> wrote: > On Sat, Aug 15, 2020 at 7:26 PM Stefano Borini <stefano.bor...@gmail.com> > wrote: > >> > QUESTION >> > Suppose we have >> > >>> d[x=1, y=2] = 42 >> > >>> d[x=1, y=2] >> > 42 >> > where d is an instance of a suitable class X that has no special >> knowledge of keywords. >> >> Initially, when I wrote the pep, the idea was that there was no >> distinction of kwargs and normal args. Basically the idea was that >> currently the only "metainfo" associated to every argument is purely >> positional (e.g. the meaning of position 1 is implicit). But index 1 >> can have a specific semantic meaning (e.g. it could be a day). >> So in practice they would be one and the same, just that you add >> non-positional semantic meaning to indexes, and you can refer to them >> either through the position, or this additional semantic meaning. >> >> In other words, if you claim that the first index is day, and the >> second index is detector, somehow, there is no difference between >> these >> >> d[3, 4] >> d[day=3, detector=4] >> d[detector=4, day=3] >> >> In fact, my initial feeling would be that you can use either one or >> the other. You should not be able to mix and match. >> >> the pep went through various revisions, and we came to a possible >> proposal, but it's not set in stone. >> > > This would definitely not be sufficient for xarray, which I see as being > one of the main users of this syntax. The whole point is to be able to > specify an arbitrary subset labeled dimensions. >
Are you saying that for xarray it is important to distinguish between `d[day=3, detector=4]` and `d[detector=4, day=3]`? If we just passed the keyword args to `__getitem__` as an extra `**kwds` argument (which preserves order, since Python 3.6 at least), that should work, right? If not, can you clarify? -- --Guido van Rossum (python.org/~guido) *Pronouns: he/him **(why is my pronoun here?)* <http://feministing.com/2015/02/03/how-using-they-as-a-singular-pronoun-can-change-the-world/>
_______________________________________________ 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/TGNFCU24YK36BOLKULDB36JRW73VTJGC/ Code of Conduct: http://python.org/psf/codeofconduct/