On Wed, May 6, 2020 at 1:42 PM Kirill Balunov <kirillbalu...@gmail.com> wrote:
> I'm totally agree with everything you said here. From my perspective, > comparing three main cases: > 1. zip(*iters, strict= (False | True)) > 2. zip(*iters, mode = ('shortest' | 'equal' | 'longest')) > 3. zip_equal(*iters) > Thanks for enumerating these. I think that's helpful so I'll flesh it out a bit more. I *think* these are the options on the table: (note, I'm keeping different names for things as the same option, and in no particular order) 1) No change zip(*iters) itertools.zip_longest(*iters, fillvalue=None) 2) Add boolean strict flag to zip zip(*iters, strict= (False | True)) itertools.zip_longest(*iters, fillvalue=None) 3) Add a ternary mode flag to zip zip(*iters, mode = ('shortest' | 'equal' | 'longest'), fillvalue=None) 4) Add a new function to itertools zip(*iters) itertools.zip_longest(*iters, fillvalue=None) itertools.zip_equal(*iters) Brandt: this might be helpful for the PEP. For my part, seeing it this way makes me think that (2) adding a strict flag to zip, while keeping zip_longest on its own in itertools, is the worst option. For me: +1 on the ternary flag +0.5 on a new function in itertools -0 on the boolean flag to zip() -CHB -- Christopher Barker, PhD Python Language Consulting - Teaching - Scientific Software Development - Desktop GUI and Web Development - wxPython, numpy, scipy, Cython
_______________________________________________ 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/3UYOEZ3ZC25PWCX6QWUUYUJ25ZHNTFZO/ Code of Conduct: http://python.org/psf/codeofconduct/