簡體   English   中英

如何使用python寫入特定位置的文件?

[英]How to write to a file in a particular position using python?

我想通過映射python文件中的鍵來替換字典值。如何做到這一點,有人幫了我,我是這個領域的新手。對不起,我的英語。

我不太確定我能理解您的問題,但我會盡力提供幫助。

要從Python將對象保存到文件中,可以使用稱為Pickle的過程。

您要做的就是將對象寫入文件,然后如果您想對其進行更改,則可以修改,更改值並重新修改。

import pickle

# Write object to file 
sampleDict = {'a': 1, 'b': 2, 'c': 3}
output = open('dictionary.pickle', 'wb')
pickle.dump(sampleDict, output)
output.close()

# Read object back in
pickledDictionary = open('dictionary.pickle', 'rb')
reimportSampleDict = pickle.load(pickledDictionary)
pickledDictionary.close()

# So far so good... No we add an item and repickle.
sampleDictNew['new_value'] = 4
pickledDictionary = open('dictionary.pickle', 'rb')
pickle.dump(reimportSampleDict, output)
pickledDictionary.close()

print sampleDict
print reimportSampleDict

請注意,如果您試圖在Python中的標准字典上對鍵進行排序,那是個壞主意。 Python不保證鍵將保持其添加位置的位置。

如果您需要能夠通過鍵對字典進行排序並可靠地插入字典中的某些位置,請嘗試將Python 3與新的Ordered Dictionary集合一起使用。 請參閱此處以獲取有關此內容的更多詳細信息: http : //docs.python.org/dev/whatsnew/2.7.html#pep-0372

如果您使用的是Python 2. *,請訪問: http : //www.voidspace.org.uk/python/odict.html ,因為它提供了類似的功能。

無論哪種方式,都可以對Dictionary對象和Ordered Dictionary對象使用相同的Pickle進程。

我希望這有幫助,

傑弗里·凱文·普瑞

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM