Author rhettinger
Recipients rhettinger
Date 2014-12-18.20:41:46
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1418935306.72.0.256960321979.issue23086@psf.upfronthosting.co.za>
In-reply-to
Content
Currently, the Sequence ABC doesn't support start and stop arguments for the index() method which limits its usefulness in doing repeated searches (iterating over a target value) and which limits it substitutablity for various concrete sequences such as tuples, lists, strings, bytes, bytearrays, etc.

>>> help(Sequence.index)
Help on method index in module _abcoll:

index(self, value) unbound _abcoll.Sequence method
    S.index(value) -> integer -- return first index of value.
    Raises ValueError if the value is not present.

>>> help(list.index)
Help on method_descriptor:

index(...)
    L.index(value, [start, [stop]]) -> integer -- return first index of value.
    Raises ValueError if the value is not present.

>>> help(str.index)
Help on method_descriptor:

index(...)
    S.index(sub [,start [,end]]) -> int
    
    Like S.find() but raise ValueError when the substring is not found.

>>> help(tuple.index)
Help on method_descriptor:

index(...)
    T.index(value, [start, [stop]]) -> integer -- return first index of value.
    Raises ValueError if the value is not present.

>>> help(bytes.index)
Help on method_descriptor:

index(...)
    S.index(sub [,start [,end]]) -> int
    
    Like S.find() but raise ValueError when the substring is not found.

>>> help(bytearray.index)
Help on method_descriptor:

index(...)
    B.index(sub [,start [,end]]) -> int
    
    Like B.find() but raise ValueError when the subsection is not found.
History
Date User Action Args
2014-12-18 20:41:46rhettingersetrecipients: + rhettinger
2014-12-18 20:41:46rhettingersetmessageid: <1418935306.72.0.256960321979.issue23086@psf.upfronthosting.co.za>
2014-12-18 20:41:46rhettingerlinkissue23086 messages
2014-12-18 20:41:46rhettingercreate