On Tue, May 13, 2008 at 11:59 AM, Facundo Batista <[EMAIL PROTECTED]> wrote: > 2008/5/13, Steven D'Aprano <[EMAIL PROTECTED]>: > > > > Perhaps what we need is a more flexible enumerate function? > > enumerate(iterable, start_at_index=0, count_from=0) > > +1 to provide both options: they're not intrusive (as I can keep using > enumerate without those), and having both helps in the understanding > of the function. > > I mean, if I find an option that is "start", I can confuse if it will > start counting or giving me the elements of the iterable... if I found > both parameters, it will be easier to understand.
Actually, having both dramatically increases the potential for confusion. Once you have the starting index option, you're always going to be worried about whether the first index generated defaults to zero or to the starting index, since depending on your use case one or the other is vastly more useful... We already have itertools.islice() which can handle both of these easily (slice the input or slice the output). -1 on providing a start index. +1 on providing a start value for the count, making it a positional-with-optional-keyword-name ('start') parameter. -- --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com