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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dictstore-1.0.0.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dictstore-1.0.0-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file dictstore-1.0.0.tar.gz.

File metadata

  • Download URL: dictstore-1.0.0.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for dictstore-1.0.0.tar.gz
Algorithm Hash digest
SHA256 209a292880c26c70807e285179b12eca2899f0de09491abed1af8c73caf7e419
MD5 192e9b6e7885d275c0cd9019396f4a76
BLAKE2b-256 735600aa4e78403d7b11491a9070655e1820b35cef076be105f373e99e1e37e4

See more details on using hashes here.

File details

Details for the file dictstore-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dictstore-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for dictstore-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35053931a319741a22a83f3836bb7ec9a6d67652705a51ce85b43fff41aa7337
MD5 1536b1e25f7a0501088cdb6bfbdcb2aa
BLAKE2b-256 d6a974142bdb764dc5da96e3d3c6c36b822da110e2126ac2cdbcaa1ff074ec6a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page