我使用 collections 库创建了一个 Python 有序字典,并将其存储在一个名为 "filename.txt" 的文件中。该文件的内容如下:
OrderedDict([(7, 0), (6, 1), (5, 2), (4, 3)])
我需要在另一个程序中使用这个OrderedDict。我的做法是:
myfile = open('filename.txt','r')
mydict = myfile.read()
我需要将'mydict'作为类型获取
<class 'collections.OrderedDict'>
但是在这里,它变成了 'str' 类型。
在 Python 中有没有一种将字符串类型转换为 OrderedDict 类型的方法?使用的是 Python 2.7。
eval
)来回答你的问题,但你确实不应该这样存储它。 - jamylakeval()
的答案进行投反对票。 - John La Rooyeval
的原因本质上是出于信仰而非理性。每种语言结构都有其存在的理由,当一个简单的eval(x)
就能解决问题时,没有必要发明一些复杂的东西。是的,它应该谨慎使用(就像任何其他东西一样),但只要数据来自可信的来源,使用eval
是完全可以的。 - georg