スポンサーリンク

このドキュメントの内容は、以下の通りです。

はじめに


データを Key - Value 型 (キーバリュー)に扱う場合に、 KVS (Key-Value-Store) や KVC (Key-Value-Cache) を使うこともできますが、小さいデータを単体で扱う場合には、 DBM を使う、という選択肢もあります。

KVS/KVC を使う場合、新たに、KVS/KVC のプロセスが必要になりますが、 DBM であれば、ローカルのファイルで完結するので、簡単に使い始めることができます。

dbmとは


dbm とは、データベースの一種です。Key (キー) に対して、Value (バリュー, 値) が格納されます。

DBを作成し、データを書き込む


DB の作成は、ファイルをオープンして、書き込むだけです。

/tmp/dbm.db というファイルが作成されます。
import dbm
db = dbm.open('/tmp/dbm', 'c')
db['foo'] = 'bar'
db['hoge'] = 'meta'
db.close()

DBからデータを読む


先ほど作成したDBを読み込み、foo の値を表示してみましょう。
import dbm
db = dbm.open('/tmp/dbm', 'j')
print(db['foo'].decode('utf-8'))
db.close()

decode を使わないと b'foo' という表示になります。

存在しないキーにアクセスすると例外が発生します。以下の例では、 KeyError の例外が表示されています。
>>> db['nothing']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'nothing'

まとめ


ちょっとしたプログラムを書いて、データを次のプログラムに受け渡したりするときに、便利です。ちょっとしたキャッシュとして使う、という場合にも利用できます。

スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

はてなの人気のブックマーク

スポンサーリンク
 

過去ログ

2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー