dbm モジュールはUnixの”(n)dbm”ライブラリのインタフェースを提供します。 dbmオブジェクトは、キーと値が必ず文字列である以外は辞書オブジェクトのようなふるまいをします。 print文などでdbmインスタンスを出力してもキーと値は出力されません。また、 items() と values() メソッドはサポートされません。
このモジュールは、BSD DB、GNU GDBM互換インタフェースを持ったクラシックなndbmインタフェースを使うことができます。 Unix上のビルド時に configure スクリプトで適切なヘッダファイルが割り当られます。
以下はこのモジュールの定義:
I/Oエラーのようなdbm特有のエラーが起ったときに上げられる値です。また、正しくないキーが与えられた場合に通常のマッピングエラーのような KeyError が発生します。
ndbm が使用している実装ライブラリ名です。
dbmデータベースを開いてdbmオブジェクトを返します。引数 filename はデータベースのファイル名を指定します。 (拡張子 .dir や .pag は付けません。また、BSD DBは拡張子 .db がついたファイルが一つ作成されます。)
オプション引数 flag は次のような値を指定します:
Value | Meaning |
---|---|
'r' | 存在するデータベースを読取り専用で開きます。(デフォルト) |
'w' | 存在するデータベースを読み書き可能な状態で開きます。 |
'c' | データベースを読み書き可能な状態で開きます。また、データベースが存在しない場合は新たに作成します。 |
'n' | 常に空のデータベースが作成され、読み書き可能な状態で開きます。 |
オプション引数 mode はデータベース作成時に使用される Unixのファイルモードを指定します。デフォルトでは8進数の 0666 です。(この値はumaskによってマスクされます)