使用shelve模組儲存變數 python)

2021-10-08 17:15:37 字數 1872 閱讀 5279

利用 shelve 模組,你可以將 python 程式中的變數儲存到二進位制的 shelf 檔案中。這樣,程式就可以從硬碟中恢復變數的資料。shelve 模組讓你在程式中新增「儲存」和「開啟」功能。例如,如果執行乙個程式,並輸入了一些配置設定,就可以將這些設定儲存到乙個 shelf 檔案,然後讓程式下一次執行時載入它們。

使用方法:`

>>

>

import shelve

>>

> shelffile = shelve.

open

('mydata'

)>>

> cats =

['zophie'

,'pooka'

,'simon'

]>>

> shelffile[

'cats'

]= cats

>>

> shelffile.close(

)

這個跟我們的字典十分類似,不過字典是變數,這裡的shelve模組是將變數保持到二進位制的shelf檔案中。

我們的shelffile物件與字典的使用方式類似,它也有keys和values.例如:

>>

> shelffile = shelve.

open

('mydata'

)>>

>

list

(shelffile.keys())

['cats'

]>>

>

list

(shelffile.values())

[['zophie'

,'pooka'

,'simon']]

>>

> shelffile.close(

)

這樣shelffile其實和字典十分類似。

它的主要作用是可以儲存我們在程式中的變數的。

對於不同的資料我們要選取合適的儲存方式,比如如果純文字可以簡單的儲存為txt即可,而對於程式中的一些變數,最好的方式就是使用shelve模組儲存這些變數。

我們還可以使用pprint.pformat()函式來儲存變數,需要先引入pprint模組。

>>

>

import pprint

>>

> cats =[,

]>>

> pprint.pformat(cats)

"[, ]"

>>

> fileobj =

open

('mycats.py'

,'w'

)>>

> fileobj.write(

'cats = '

+ pprint.pformat(cats)

+'\n')83

>>

> fileobj.close(

)

pprint.pformat(),將會返回乙個字串,而字串可以更好的寫入文字檔案中,這裡我們寫入的是乙個py檔案,通過pprint.pformat()處理後寫入.py檔案中,是符號python的語法的,因此如果我們要使用這些變數,可以把它當作模組直接引入就可以了。

>>

>

import mycats

>>

> mycats.cats[,

]>>

> mycats.cats[0]

>>

> mycats.cats[0]

['name'

]'zophie'

利用這種方式儲存變數,我們可以用乙個文字編輯器就可以開啟和編輯,十分的簡單,但是在程式中的變數,如果我們要儲存它們,使用shelve模組更好。

python用 shelve 模組儲存變數

利用 shelve 模組,你可以將 python 程式中的變數儲存到二進位制的 shelf 檔案中。這樣,程式就可以從硬碟中恢復變數的資料。shelve 模組讓你在程式中新增 儲存 和 開啟 功能。例如,如果執行乙個程式,並輸入了一些配置設定,就可以將這些設定儲存到乙個 shelf 檔案,然後讓程式...

shelve模組使用

shelve模組是乙個簡單的key,value將記憶體資料通過檔案持久化的模組,可以持久化任何pickle可支援的python資料格式 import shelve data shelve.open shelve file 開啟乙個檔案 info name zhangsan lisi wangwu d...

Python使用Shelve儲存物件方法總結

shelve是乙個功能強大的python模組,用於物件永續性。擱置物件時,必須指定乙個用於識別物件值的鍵。通過這種方式,擱置檔案成為儲存值的資料庫,其中任何乙個都可以隨時訪問。程式設計客棧python中擱置的示例 要擱置物件,首先匯入模組,然後按如下方式分配物件值 import shelve dat...