我在Python 3.6上写了一些代码,发现它依赖于3.6中新增的键的dict插入顺序,并且在3.7中可以保证。 我想支持3.5。我在文件的开头有这个
import sys
if sys.version_info[1] < 6:
from collections import OrderedDict
else:
OrderedDict = dict
似乎有效。我假设dict可能比OrderedDict快,尽管我没有检查。我的问题是,这是执行此操作的方法,还是出于某种原因,是否存在一些更系统/更漂亮/更pythonic或更普遍的更好方法?
答案 0 :(得分:0)
您的解决方案可以正常工作,但是我要提醒您不要用其他任何东西替换标准库名称,这可能会使尝试使用OrederedDict(并发现它只是字典)的人感到困惑。
我建议这样做:
import sys
if sys.version_info[1] < 6:
from collections import OrderedDict as ordered_dict
else:
ordered_dict = dict