Нарезка Python OrderedDict
В моем коде мне часто нужно взять подмножество ключей и значений из PythonOrderedDict
(отcollections
пакет). Нарезка не работает (бросаетTypeError: unhashable type
) и альтернатива, повторяющаяся, громоздка:
from collections import OrderedDict
o = OrderedDict([('a', 1), ('b', 2), ('c', 3), ('d', 4)])
# want to do:
# x = o[1:3]
# need to do:
x = OrderedDict()
for idx, key in enumerate(o):
if 1 <= idx < 3:
x[key] = o[key]
Есть ли лучший способ сделать это?