On Fri, Nov 2, 2018 at 4:45 AM Serhiy Storchaka <storch...@gmail.com> wrote: > > 31.10.18 13:08, Antoine Pitrou пише: > > +1 from me. dict.pop() already has an optional default. This is a > > straight-forward improvement to the API and no Python programmer will > > be surprised. > > list.pop() corresponds two dict methods. With argument it corresponds > dict.pop(). But there are differences: dict.pop() called repeatedly with > the same key will raise an error (or return the default), while > list.pop() will likely return other item. Without argument it > corresponds dict.popitem() which doesn't have an optional default. >
I think there is one more important difference between dict and list. dict has .get(key[, default]), but list doesn't have it. If we add only `list.pop([default])`, it is tempting that using it even when they don't have to remove the item. Unnecessary destructive change is bad. It reduces code readability, and it may create hard bug. If this proposal is adding `list.get([index[, default]])` too, I still -0. I don't know how often it is useful. Regards, -- INADA Naoki <songofaca...@gmail.com> _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/