SciSave - Python Data Loader/Dumper for Science
Project description
SciSave - Python Data Loader/Dumper for Science
- Repository: github.com/otvam/scisave
- Package: pypi.org/project/scisave
Summary
SciSave is a Python serialization/deserialization module:
- Specially targeted for scientific applications.
- Load JSON/YAML configuration files.
- Load and write JSON/Pickle data files.
For YAML files, the following custom extensions are used:
!path
- parse relative paths (with respect to the YAML file).!include
- include other YAML files (recursion possible).!env
- include YAML string from environment variables.!merge_dict
- merge a list of dicts.!merge_list
- merge a list of lists.
For JSON files, the following custom extensions are used:
- Allows the serialization/deserialization of complex numbers (
__complex__
). - Allows the serialization/deserialization of NumPy arrays (
__numpy__
). - Allows the serialization/deserialization as/from text and gzip files
The following file extensions are used:
.yaml, .yml
- for YAML files.json, .js
- for JSON text files.gz, .gzip
- for JSON gzip files.pck, .pkl, .pickle
- for Pickle files
The JSON/YAML files with the custom extensions are still valid JSON/YAML files.
SciSave is written in Python (NumPy and PyYAML are the only dependencies).
Warning
- Pickling data is not secure.
- Only load pickle files that you trust.
Example
An example is located in the example
folder of the repository:
run_data.py
contains an example file for the loader/dumperconfig_main.yaml
YAML configuration file with custom extensionsconfig_include.yaml
YAML configuration file for include extensiondump.json
JSON plain text file for testing data dumping/loadingdump.gz
JSON plain gzip file for testing data dumping/loadingdump.pickle
Pickle file for testing data dumping/loading
Project Links
- Repository: https://github.com/otvam/scisave
- Releases: https://github.com/otvam/scisave/releases
- Tags: https://github.com/otvam/scisave/tags
- Issues: https://github.com/otvam/scisave/issues
- PyPi: https://pypi.org/project/scisave
Author
- Thomas Guillod
- Email: guillod@otvam.ch
- Website: https://otvam.ch
Copyright
(c) 2023 - Thomas Guillod
BSD 2-Clause "Simplified" License
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 Distribution
scisave-1.2.0.tar.gz
(10.2 kB
view hashes)