簡體   English   中英

Python 存儲數據

[英]Python Storing Data

我的程序中有一個列表。 我有一個 function 到 append 到列表中,不幸的是,當你關閉程序時,你添加的東西消失了,列表又回到了開頭。 有什么方法可以存儲數據,以便用戶可以重新打開程序並且列表已滿。

您可以嘗試使用pickle模塊將內存數據存儲到磁盤中,這是一個示例:

存儲數據:

import pickle
dataset = ['hello','test']
outputFile = 'test.data'
fw = open(outputFile, 'wb')
pickle.dump(dataset, fw)
fw.close()

加載數據:

import pickle
inputFile = 'test.data'
fd = open(inputFile, 'rb')
dataset = pickle.load(fd)
print dataset

你可以制作一個數據庫並保存它們,唯一的方法就是這樣。 帶有 SQLITE 或 .txt 文件的數據庫。 例如:

with open("mylist.txt","w") as f: #in write mode
    f.write("{}".format(mylist))

您的列表進入format()函數。 它將創建一個名為mylist的 .txt 文件,並將您的列表數據保存到其中。

之后,當您想再次訪問您的數據時,您可以執行以下操作:

with open("mylist.txt") as f: #in read mode, not in write mode, careful
    rd=f.readlines()
print (rd)

內置的pickle模塊為序列化提供了一些基本功能,這是一個將任意對象轉換為適合寫入磁盤的東西的術語。 查看Python 2Python 3的文檔。

不過,Pickle 不是很健壯,對於更復雜的數據,您可能需要查看數據庫模塊(如內置sqlite3或完整的對象關系映射(ORM)(如 SQLAlchemy)。

對於存儲大數據,HDF5 庫是合適的。 它由 Python 中的h5py實現。

暫無
暫無

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

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