[Python-ideas] Add single() to itertools
Ivan Pozdeev
vano at mail.mipt.ru
Mon Oct 30 05:49:09 EDT 2017
More information about the Python-ideas mailing list
Mon Oct 30 05:49:09 EDT 2017
- Previous message (by thread): [Python-ideas] Add single() to itertools
- Next message (by thread): [Python-ideas] Add single() to itertools
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 30.10.2017 9:29, python-ideas-request at python.org wrote: > If I have understood your use-case, you have a function that returns a > list of results (or possibly an iterator, or a tuple, or some other > sequence): > > print(search(haystack, needle)) > # prints ['bronze needle', 'gold needle', 'silver needle'] > > There are times you expect there to be a single result, and if there are > multiple results, that is considered an error. Am I correct so far? Correct. > If so, then sequence unpacking is your friend: > > result, = search(haystack, needle) > > <...> > > I *think* this will solve your problem. > > If not, can you please explain what "single()" is supposed to do, why it > belongs in itertools, and show an example of how it will work. That works. Too arcane in my book though (and others' too according to https://stackoverflow.com/a/473337/648265), and the error messages are cryptic in this use case. It also cannot be a part of an expression, unlike next(). The initial post on the above link summarizes the suggested implementation pretty well. -- Regards, Ivan
- Previous message (by thread): [Python-ideas] Add single() to itertools
- Next message (by thread): [Python-ideas] Add single() to itertools
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-ideas mailing list