11.12。 dumbdbm —ポータブルDBMの実装
ノート
dumbdbm モジュールは、堅牢なモジュールが利用できなくなった場合の anydbm モジュールの最後の手段としてのフォールバックとして意図されています。 dumbdbm モジュールは速度を重視して記述されておらず、他のデータベースモジュールほど頻繁には使用されていません。
dumbdbm モジュールは、完全にPythonで記述された永続的な辞書のようなインターフェイスを提供します。 gdbm や bsddb などの他のモジュールとは異なり、外部ライブラリは必要ありません。 他の永続的なマッピングと同様に、キーと値は常に文字列である必要があります。
モジュールは以下を定義します:
- exception dumbdbm.error
- I / Oエラーなどのdumbdbm固有のエラーで発生します。
KeyError
は、誤ったキーの指定などの一般的なマッピングエラーに対して発生します。
- dumbdbm.open(filename[, flag[, mode]])
dumbdbmデータベースを開き、dumbdbmオブジェクトを返します。 filename 引数は、データベースファイルのベース名です(特定の拡張子はありません)。 dumbdbmデータベースが作成されると、
.dat
および.dir
拡張子のファイルが作成されます。オプションの flag 引数は現在無視されています。 データベースは常に更新のために開かれ、存在しない場合は作成されます。
オプションの mode 引数は、ファイルのUnixモードであり、データベースを作成する必要がある場合にのみ使用されます。 デフォルトは8進数
0666
です(一般的なumaskによって変更されます)。バージョン2.2で変更: mode 引数は以前のバージョンでは無視されていました。
辞書のようなメソッドに加えて、dumbdm
オブジェクトは次のメソッドを提供します。
- dumbdbm.close()
dumbdm
データベースを閉じます。
も参照してください
- モジュール anydbm
dbm
スタイルのデータベースへの汎用インターフェース。- モジュール dbm
- DBM / NDBMライブラリと同様のインターフェース。
- モジュール gdbm
- GNUGDBMライブラリと同様のインターフェース。
- モジュールシェルフ
- 文字列以外のデータを格納する永続モジュール。
- モジュール whichdb
- 既存のデータベースのタイプを判別するために使用されるユーティリティモジュール。
11.12.1。 Dumbdbmオブジェクト
UserDict.DictMixin クラスによって提供されるメソッドに加えて、dumbdbm
オブジェクトは次のメソッドを提供します。
- dumbdbm.sync()
- ディスク上のディレクトリとデータファイルを同期します。 このメソッドは、
Shelve
オブジェクトの sync()メソッドによって呼び出されます。