A small pure-python package for data structure relatedutility functions.
Project description
A small pure-python package for data strcture related utility functions.
from strct.dict import get_nested_val
>>> dict_obj = {'a': {'b': 7}}
>>> get_nested_val(('a', 'b'), dict_obj)
7
1 Installation
Install strct with:
pip install strct
2 Use
strct is divided into five sub-modules:
2.1 dicts
Getting values from nested dicts in various ways; operations on number-valued dicts; merging, normalizing, reversing and printing dicts (nicely)
2.2 lists
Index and element shifts that preserve order.
2.3 sets
Operations on sets:
Getting a set element by a priority list.
2.4 sortedlists
Operations on sortedcontainers.SortedList objects.
2.5 hash
Provide cross-kernel stable hash functions that work for built-in data structures and types, and for any custom data structure complying with the iterable or dict schemes.
3 Contributing
Package author and current maintainer is Shay Palachy (shay.palachy@gmail.com); You are more than welcome to approach him for help. Contributions are very welcomed.
3.1 Installing for development
Clone:
git clone git@github.com:shaypal5/strct.git
Install in development mode with test dependencies:
cd strct
pip install -e ".[test]"
3.2 Running the tests
To run the tests, use:
python -m pytest --cov=strct --doctest-modules
3.3 Adding documentation
This project is documented using the numpy docstring conventions, which were chosen as they are perhaps the most widely-spread conventions that are both supported by common tools such as Sphinx and result in human-readable docstrings (in my personal opinion, of course). When documenting code you add to this project, please follow these conventions.
4 Credits
Created by Shay Palachy (shay.palachy@gmail.com).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for strct-0.0.27-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f70069dd3dc03ce0c77adca1aaa03cfa990a837220e5b7a2c8a567260e24283 |
|
MD5 | 1ca1ed5a37c241a12a918cc3373e5aea |
|
BLAKE2b-256 | 7b5e508adbe21336f0fcd8cdf1b8b9270dfdf0726479cbfc236920c4b1c348dd |