Issue 10059: add the method index
to collections.deque (original) (raw)
Issue10059
Created on 2010-10-10 00:23 by Simon.Liedtke, last changed 2022-04-11 14:57 by admin. This issue is now closed.
Messages (5) | ||
---|---|---|
msg118296 - (view) | Author: Simon Liedtke (Simon.Liedtke) | Date: 2010-10-10 00:23 |
I'd like to have the method `index` not only for list, but also for collections.deque. Here is my attempt: http://bitbucket.org/derdon/hodgepodge/src/tip/extended_deque.py I'm looking forward to see this method implemented in the stdlib! | ||
msg118297 - (view) | Author: Ned Deily (ned.deily) * ![]() |
Date: 2010-10-10 01:37 |
Since you are requesting adding a method to an existing data type, you should probably raise this issue first on the python-ideas mailing list and be prepared to justify use cases for it. http://mail.python.org/mailman/listinfo/python-ideas | ||
msg118304 - (view) | Author: Raymond Hettinger (rhettinger) * ![]() |
Date: 2010-10-10 05:30 |
The absence of index() from collections deque wasn't an oversight. Deques are not really about indexed access, they are about appending and popping from the ends. I'm curious about your use case and whether it is a good match for this data structure. | ||
msg118305 - (view) | Author: Daniel Stutzbach (stutzbach) ![]() |
Date: 2010-10-10 05:36 |
Hello Simon, Accessing an arbitrary element of a deque takes O(n) time, making your .index implementation O(n**2). If you describe the kinds of operations that you need to perform efficiently, we may be able to suggest a better data structure for you to use. | ||
msg118333 - (view) | Author: Simon Liedtke (Simon.Liedtke) | Date: 2010-10-10 10:57 |
I see that adding this method to a deque is useless. A list is better for this kind of operation. I just wrote it for fun and realized that it was implemented rather slow. |
History | |||
---|---|---|---|
Date | User | Action | Args |
2022-04-11 14:57:07 | admin | set | github: 54268 |
2010-10-10 10:57:31 | Simon.Liedtke | set | status: open -> closedresolution: rejectedmessages: + |
2010-10-10 05:36:32 | stutzbach | set | messages: + |
2010-10-10 05:30:08 | rhettinger | set | priority: normal -> lownosy:rhettinger, ned.deily, stutzbach, Simon.Liedtkemessages: + assignee: rhettingercomponents: + Extension Modules, - Library (Lib) |
2010-10-10 01:37:57 | ned.deily | set | nosy: + rhettinger, stutzbach, ned.deilymessages: + versions: + Python 3.2 |
2010-10-10 00:23:45 | Simon.Liedtke | create |