Skip to main content

dictstore

dictstore is a simple local data store for Python that aims to provide an interface similar to a python dictionary.


Getting Started

Installation
pip install dictstore
Usage
# 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

Considerations

  • 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.

Keys

All Hashable Data Types are supported as keys.

Hashable Data Types
Name Type
String str
Integer int
Float float
Tuple tuple

Values

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.

https://docs.python.org/3/library/ast.html#ast.literal_eval

Release files for dictstore 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dictstore 1.0.0
File Size Uploaded
dictstore-1.0.0.tar.gz 9.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dictstore 1.0.0
File Interpreter ABI Platform
dictstore-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 21.3 kB

Release files / dictstore-1.0.0.tar.gz

Download URL dictstore-1.0.0.tar.gz
Size 9.2 kB
Tags Source
SHA-256 checksum
How to use checksums
209a292880c26c70807e285179b12eca2899f0de09491abed1af8c73caf7e419
BLAKE2b-256 checksum
How to use checksums
735600aa4e78403d7b11491a9070655e1820b35cef076be105f373e99e1e37e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.9.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

Release files / dictstore-1.0.0-py3-none-any.whl

Download URL dictstore-1.0.0-py3-none-any.whl
Size 12.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
35053931a319741a22a83f3836bb7ec9a6d67652705a51ce85b43fff41aa7337
BLAKE2b-256 checksum
How to use checksums
d6a974142bdb764dc5da96e3d3c6c36b822da110e2126ac2cdbcaa1ff074ec6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.9.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page