Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #93775
| References | <mo0qk1$ora$1@ger.gmane.org> <mailman.475.1436843580.3674.python-list@python.org> <55a480c0$0$1673$c3e8da3$5496439d@news.astraweb.com> |
|---|---|
| From | Ian Kelly <ian.g.kelly@gmail.com> |
| Date | 2015-07-13 22:07 -0600 |
| Subject | Re: str.index() and str.find() versus only list.index() |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.477.1436846888.3674.python-list@python.org> (permalink) |
On Mon, Jul 13, 2015 at 9:23 PM, Steven D'Aprano <steve@pearwood.info> wrote: > On Tue, 14 Jul 2015 01:12 pm, Ian Kelly wrote: > >> On Mon, Jul 13, 2015 at 10:56 AM, Roel Schroeven <roel@roelschroeven.net> >> wrote: >>> Hi, >>> >>> Quick question: why does str have both index() and find(), while list >>> only has index()? Is there a reason for that, or is it just an historical >>> accident? >> >> Historical accident, I think. If it were to be redone, I doubt that >> str.find would exist. The problem with it is that it returns -1 to >> indicate that the argument was not found, but -1 is a valid index into >> the string. This is a potential source of hard-to-find bugs. > > Correct. But rather than removing it, it would be better to take a leaf out > of re.match's book and return None as the sentinel. That would eliminate > the "using -1 as a valid index" bug. I disagree on both counts. >>> s = 'abc' >>> s[None:None] 'abc' Better IMO to just have the one non-redundant method that raises an exception rather than returning anything that could possibly be interpreted as a string index.
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: str.index() and str.find() versus only list.index() Ian Kelly <ian.g.kelly@gmail.com> - 2015-07-13 21:12 -0600
Re: str.index() and str.find() versus only list.index() Steven D'Aprano <steve@pearwood.info> - 2015-07-14 13:23 +1000
Re: str.index() and str.find() versus only list.index() Ian Kelly <ian.g.kelly@gmail.com> - 2015-07-13 22:07 -0600
Re: str.index() and str.find() versus only list.index() Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2015-07-14 14:58 +1000
Re: str.index() and str.find() versus only list.index() Chris Angelico <rosuav@gmail.com> - 2015-07-14 15:13 +1000
csiph-web