On Wed, Apr 21, 2010 at 2:59 AM, Stef Mientki <stef.mien...@gmail.com> wrote: > On 21-04-2010 10:56, Chris Rebert wrote: >> On Wed, Apr 21, 2010 at 1:51 AM, Stef Mientki <stef.mien...@gmail.com> wrote: >>> With the following code, I would expect a result of 5 !! >>> >>>>>> a= 'word1 word2 word3' >>>>>> a.rfind(' ',7) >>>>>> >>> 11 >>> >>> Is this a bug ? >>> >> No. Don't you think someone would have found such an obvious bug by now? >> > if it's not a bug, > then the start index has no meaning ... > ... and some would call that a bug.
Ah, I neglected to take your use of .rfind()'s second parameter into account! As can be interpolated from the part of the docs James quotes: s.rfind(' ', 7) === s[7:].rfind(' ') + 7 # overlooking the 'not present' case That is, the second parameter to .rfind(), namely `start`, is relative to the *left* end of the string, not the right end. I can see how this might be unintuitive, but it does make the API more uniform. Cheers, Chris -- http://mail.python.org/mailman/listinfo/python-list