[Python-Dev] AC Derby and accepting None for optional positional arguments (original) (raw)
Terry Reedy tjreedy at udel.edu
Thu Jan 16 10:42:43 CET 2014
- Previous message: [Python-Dev] AC Derby and accepting None for optional positional arguments
- Next message: [Python-Dev] AC Derby and accepting None for optional positional arguments
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 1/16/2014 3:31 AM, Serhiy Storchaka wrote:
16.01.14 08:05, Guido van Rossum написав(ла):
In this specific case it's clear to me that the special-casing of negative count is intentional -- presumably it emulates sequence repetition, where e.g. 'a'*-1 == ''. In this specific case it's contrary to sequence repetition. Because repeat('a', -1) repeats 'a' forever.
'Forever' only when the keyword is used and the value is -1. In 3.4b2
itertools.repeat('a', -1) repeat('a', 0) itertools.repeat('a', times=-1) repeat('a') itertools.repeat('a', times=-2) repeat('a', -2)
This is a point of Vajrasky's issue [1].
The first line is correct in both behavior and representation. The second line behavior (and corresponding repr) are wrong. The third line repr is wrong but the behavior is like the first.
-- Terry Jan Reedy
- Previous message: [Python-Dev] AC Derby and accepting None for optional positional arguments
- Next message: [Python-Dev] AC Derby and accepting None for optional positional arguments
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]