No intention to merge: Add insert_before, insert_after, and swap to collections.OrderedDict. #1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR updates OrderedDict’s C implementation, and adds insert_before, insert_after, and swap, which are discussed in the thread below.
https://discuss.python.org/t/insert-swap-get-by-index-for-ordereddict/52375/5
from collections import OrderedDict
d = OrderedDict({i:i for i in range(10)})
d = OrderedDict(a=1, b=2, c=3)
a = d.copy()
a.insert_before('b', 'x', 0)
print(dict(a))
b = d.copy()
b.insert_after('b', 'x', 0)
print(dict(b))
d.swap('a', 'c')
print(dict(d))