There could be other modes, such as `mode="repeat"` which reuses the last value of each iterator as a fillvalue, or `mode="wrap"` which is similar to `zip(*(it.cycle(x) for x in its))`.

So indeed a binary flag protects from additional requests to further overload that function. This can be a good thing but it could also miss on (future) opportunities.

On 04.05.20 16:55, Ricky Teachey wrote:
I'm wondering if a `mode` (or similar) keyword argument, with multiple possible options, should be included in the "rejected" section of the PEP.

zip(*args, mode="longest")  <-- default
zip(*args, mode="equal")  <-- or "even"

An advantage of this way is if the option to zip in different ways proves popular, you could later add zip shortest as an option, and maybe others I'm not smart enough to think of:

zip(*args, mode="shortest")

The PEP should argue against doing this since `strict= True or False` forever limits you to only two modes of zipping.


"I've never met a Kentucky man who wasn't either thinking about going home or actually going home." - Happy Chandler

Python-ideas mailing list --
To unsubscribe send an email to
Message archived at
Code of Conduct: