skip to navigation
skip to content

permadict 1.0.1

A trivial, persistent, dictionary-like object, backed by SQLite.

A trivial, persistent, dictionary-like object, backed by SQLite.

Installation

$ python setup.py install

Or just drop the permadict.py file into your package.

Usage

Basic usage:

>>> from permadict import Permadict
>>> d = Permadict("db.sqlite")
>>> d["key"] = "value"
>>> print(d["key"])
value

As a context manager:

>>> with Permadict("db.sqlite") as d:
...     d["something"] = 1.2345
...
>>> with Permadict("db.sqlite") as d:
...     print(d["something"])
...
1.2345

Iterating:

>>> d = Permadict("db.sqlite")
>>> for k, v in d.items():
...     print(k, v)
...
something 1.2345
>>> for key in d.keys():
...     print(key)
...
something

Deleting an item:

>>> del d["something"]

Clearing all items:

>>> d.clear()

Limitations

Keys must be strings. Values are stored as BLOB type after being pickled, so your Python objects must be picklable.

Permadict doesn’t act entirely like a dict: some methods are missing, whether that be on purpose (as with dict.copy) or simply due to negligence.

Motivation

I needed a way to share small amounts of data between processes. SQLite provides a safe way to do so. Also, why not?

 
File Type Py Version Uploaded on Size
permadict-1.0.1-py2.py3-none-any.whl (md5) Python Wheel py2.py3 2017-03-19 4KB