dictstore is a simple local data store for Python that aims to provide an interface similar to a python dictionary.
pip install dictstore
# file: sample_1.py
from dictstore import DictStore
data = DictStore()
d[1] = 45
# file: sample_2.py
from dictstore import DictStore
data = DictStore()
print(d[1])
# output: 45
-
dictstore uses an in memory dictionary to support fast reads
-
using multiple DictStore instances for the same data file is not supported. Instead DictStore class returns the same instance for the same data file throughout the python code (Singleton behaviour).
-
dictstore is best suited for CLIs or similar applications where values have to be remembered accross multiple runs.
-
The data file is a plain readable text file and no encryption is offered by dictstore.
-
dictstore might not be the fastest datastore, its promise is to get the work done and nothing more.
-
dictstore will evaluate the type of value for all the nested objects in a given value, this is done using a Tree.
-
This project has not be tested for concurrency safety. Please be cautious when using in projects involving multi-anything.
All Hashable Data Types are supported as keys.
Name | Type |
---|---|
String | str |
Integer | int |
Float | float |
Tuple | tuple |
Dictstore uses ast
package and ast.literal_eval
under the hood, so currently all the data types supported by ast.literal_eval
except Ellipsis are supported as values.
strings, bytes, numbers, tuples, lists, dicts, sets, booleans, None.
For more information about ast.literal_eval visit the following link.