在Python中,有没有办法按顺序检索项目的关键列表?
String.compareMethods = {'equals': String.equals,
'contains': String.contains,
'startswith': String.startswith,
'endswith': String.endswith}
您在此处看到的按键用于选择(下拉)框,因此顺序非常重要。
有没有办法没有保留一个单独的列表(并没有为我正在尝试做的事情过度复杂化)?对于我所看到的,由于涉及散列而不可能......
我正在使用Python 2.6.x。
答案 0 :(得分:9)
在Python 2.7+上使用collections.OrderedDict
,在旧版本的Python上使用OrderedDict
from PyPI。您应该可以使用pip install ordereddict
或easy_install ordereddict
安装Python 2.4-2.6。
它是dict
的子类,因此任何采用dict
的方法也会接受OrderedDict
。
答案 1 :(得分:2)
您需要的是OrderedDict。
from collections import OrderedDict
d = OrderedDict();
d['equals'] = String.equals
d['contains'] = String.contains
# ...