Python-data-persistence-dbm-package
提供:Dev Guides
Pythonデータの永続性-dbmパッケージ
dbmパッケージは、インターフェイスDBMスタイルのデータベースのような辞書を提供します。 * DBMはデータベースマネージャーの略です*。 これはUNIX(およびUNIXに似た)オペレーティングシステムで使用されます。 dbbmライブラリは、ケントンプソンが作成したシンプルなデータベースエンジンです。 これらのデータベースは、バイナリエンコードされた文字列オブジェクトをキーと値として使用します。
データベースは、単一のキー(主キー)を使用してデータを固定サイズのバケットに格納し、ハッシュ技術を使用して、キーによるデータの高速取得を可能にします。
dbmパッケージには次のモジュールが含まれています-
- dbm.gnu モジュールは、GNUプロジェクトによって実装されるDBMライブラリバージョンへのインターフェイスです。
- dbm.ndbm モジュールは、UNIX nbdm実装へのインターフェースを提供します。
- dbm.dumb は、イベントのフォールバックオプションとして使用されます。他のdbm実装は見つかりません。 これには外部の依存関係は必要ありませんが、他のものより遅いです。
>>> dbm.whichdb('mydbm.db')
'dbm.dumb'
>>> import dbm
>>> db=dbm.open('mydbm.db','n')
>>> db['name']=Raj Deshmane'
>>> db['address']='Kirtinagar Pune'
>>> db['PIN']='431101'
>>> db.close()
open()関数は、これらのフラグのモードを許可します-
| Sr.No. | Value & Meaning |
|---|---|
| 1 |
'r' 既存のデータベースを読み取り専用で開く(デフォルト) |
| 2 |
'w' 読み取りと書き込みのために既存のデータベースを開く |
| 3 |
'c' 読み取りと書き込みのためにデータベースを開き、存在しない場合は作成します |
| 4 |
'n' 常に新しい空のデータベースを作成し、読み取りおよび書き込み用に開く |
dbmオブジェクトは、シェルフオブジェクトと同じように、ディクショナリのようなオブジェクトです。 したがって、すべての辞書操作を実行できます。 dbmオブジェクトは、get()、pop()、append()およびupdate()メソッドを呼び出すことができます。 次のコードは、「mydbm.db」を「r」フラグで開いて、キーと値のペアのコレクションを反復処理します。
>>> db=dbm.open('mydbm.db','r')
>>> for k,v in db.items():
print (k,v)
b'name' : b'Raj Deshmane'
b'address' : b'Kirtinagar Pune'
b'PIN' : b'431101'