2017-07-21 91 views
1

在保存数据矩阵之前,我需要将我的数据的一些信息保存到文本文件中,但是我发现顺序与最初分配给字典的顺序稍有不同。我如何保持正确的顺序?这里是我的代码:如何将字典保存为一个文本文件,最初我在Python中为它分配了它?

headers = {} 
headers["ncols"] = "184" 
headers["nrows"] = "223" 
headers["xllcorner"] = "0" 
headers["yllcorner"] = "0" 
headers["cellsize"] = "1000" 
headers["NODATA_value"] = "-9999" 
path = "DATA.txt" 
with open(path, 'w') as f: 
    for K, V in headerdict.items(): 
     f.write(K + "\t" + V + "\n") 

这是得到的文件获得: Resulting text file I get:

PS:Python 2.7版

回答

0

您需要使用ordereddict

from collections import OrderedDict 

headers = OrderedDict() 

headers = {} 
headers["ncols"] = "184" 
headers["nrows"] = "223" 
headers["xllcorner"] = "0" 
headers["yllcorner"] = "0" 
headers["cellsize"] = "1000" 
headers["NODATA_value"] = "-9999" 

with open(r"D:\data\desktop-jul12016\Desktop This Week\demo.txt", 'w') as f: 
    for K, V in headers.items(): 
     f.write(K + "\t" + V + "\n") 
0

您可以使用OrderedDict来自collections模块的数据结构。

你可以阅读更多关于它here

+0

谢谢你的回复。它帮助到我。 – KarlHuang

相关问题