我有一个包含以下内容的文本文件:
{'InventoryTake':'Key','OtherSceneNode':'Shed','AddOtherScene':'ShedOpen'}
以及从文本文件中检索数据的代码:
^{pr2}$我遇到的问题是,由于字典运行的代码的性质,我需要把它整理好。但是python以随机顺序存储字典键。在
我试过用有序字典来保持顺序,但这没什么区别。我认为这是因为当有序字典获得信息时,它已经按照从文件中读入的内容进行了排序。在
我尝试过eval、literal_eval和json解析器来正确读取数据,但是在运行程序时,字典总是以错误的顺序出现。在
程序这一部分的目的是允许文本文件字典存储尽可能多的这些对(OtherSceneNode和AddOtherScene/taketherscene)。所以我不能假设只有一组键值对。在
我使用的是python 2.7.5,如果它有助于排序,那么它的输出顺序是:
{'InventoryTake':'Key','AddOtherScene':'ShedOpen','OtherSceneNode':'Shed'}
我可以重做文本文件以获得特定的行,但这将使我的文本文件更加复杂,我觉得这只是为了避免问题而不是解决问题。在
这有点罗嗦,但似乎符合您的要求:
一种方法是在字符串中查找已解析的数据对,以找到它们的原始相对顺序:
这给了我:
^{pr2}$这应该能做到这一点,而且比其他大多数解决方案都要短。在
相关问题 更多 >
编程相关推荐