Tools for pickling Python objects in completely different way
Project description
Rickled
....
&((((((((((((((%,
#(*,*((//(((((((((((%.
,((*,&, .,.(#(((#((((%
/((((((/(/////(/###(((((((%
#(((((/(/(((//(/(/(((((((((%
.((((# #/#. %#((((((((%
,(((/ # %((((((((#*
,((((* #(/ &((((((((((%
,((((%(((((/#/((//(#((((#((((##,
((%(@@&///@%/(/@//@@(#(##((((((/
%&@@@@@@@,&,@&@@@@@@@@#&(((((((&
##&&@@@@@@@@@@@&#(##@&#%#((((((#
#(###(#&.(*#*&/#*&%#(%(##(((((((,
%((#(((//(/(/(///((#((((((((((((/
%/#((((//////////(((((((((((((((#
%((((((///////////((((((((((((((@
%((((((//////////(((((((((((((((#
#((((((/(//////(/((((((((#(((((((
#((((((/////(((/((((((((((##/((#(.
%((((((//////(/(((((((((((##/((((.
#((((((//(///((((((((((((##((((((.
#(((((((((//(((((((((((((((((((((
*(((((((///(//(((((((((((((((((((#
(((#(((/////////(((((((((((((((((%
%((((((////////((((((((((((((((((@
*(((((((/////////(((((((((((((((((/
&(((((((/(///(((((#(((((((((((((((
*((((((((/////((((((((((((((((((((&
(((((((((///((/(((((((((((((((((((/
%(((((((#////(/(((((((((((((((((((#.
.#((((((((///((((((((((((((((#((((((
*(/#(((((((/(/((((((((((((((((((((#.
%((/(((((/(/(/(((((((((((((((###((..
#(((((/##((/((((((((((((((((###((..
#(((((((((((((((((((((#(#(((((((,,
.#(((((((((((((((((((((((((###((/.
#((((((((((((((((((((((((((((((
*(((((#(/#(//((((((((((((((((..
&(//##(//(//((//((((((((((#
*///(//////////(((((///#
*#//////////(///(#/
_______ _ __ __ __
|_ __ \ (_) [ | _ [ | | ]
| |__) | __ .---. | | / ] | | .---. .--.| |
| __ / [ | / /'`\] | '' < | |/ /__\\/ /'`\' |
_| | \ \_ | | | \__. | |`\ \ | || \__.,| \__/ |
|____| |___|[___]'.___.'[__| \_][___]'.__.' '.__.;__]
by Zipfian Science; Fork by Fabian Sperrle
Python tools for creating a different type of pickling by Zipfian Science.
Rickle is a lightweight tool for loading and writing very small Python objects to YAML or JSON representations. This is especially useful for creating YAML config files and serialising them as Python objects. Works great in interactive Python environments like notebooks.
For documentation, see docs.
Source on GitHub.
Install
$ pip install rickled
And use
from rickled import Rickle
Using an example YAML file:
BASIC:
text: test
dictionary:
one: 1
two: 2
number: 2
list:
- one
- two
- four
- name: John
age: 20
USERNAME:
type: env
load: USERNAME
callable_lambda:
type: lambda
load: "lambda: print('hell world!')"
datenow:
type: lambda
import:
- "from datetime import datetime as dd"
load: "lambda: print(dd.utcnow().strftime('%Y-%m-%d'))"
test_function:
type: function
name: test_function
args:
x: 7
y: null
s: hello world
any:
- 1
- hello
import:
- "math"
load: >
def test(x, y, s, any):
print(math.e)
iii = 111
print(iii)
print(x,s)
if y:
print(type(y))
else:
print(y)
for i in any:
print(i)
Then use Rickle:
>> from rickled import Rickle
>> config = Rickle('./config.yaml', deep=True, load_lambda=True)
>> config.BASIC.callable_lambda()
'hell world!'
Release
- Date: 2022-03-24
- Version: 0.4.0
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
gsrickled-0.4.0.tar.gz
(18.9 kB
view details)
Built Distribution
gsrickled-0.4.0-py3-none-any.whl
(17.8 kB
view details)
File details
Details for the file gsrickled-0.4.0.tar.gz
.
File metadata
- Download URL: gsrickled-0.4.0.tar.gz
- Upload date:
- Size: 18.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93c81d8f7c17641b32b6e2767443b37dab26bab9d6e810bac2d66ffb2b5641d0 |
|
MD5 | 3002731525920d5971559a26b294211b |
|
BLAKE2b-256 | 765487d8561d1bed28a51dc53f2356dc2acb4cc066945eb5c6a69b3d33f4f6bd |
File details
Details for the file gsrickled-0.4.0-py3-none-any.whl
.
File metadata
- Download URL: gsrickled-0.4.0-py3-none-any.whl
- Upload date:
- Size: 17.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 30b4bff185200108d1f9c48384fbe54c83cfc44e0a3eb78aa16d7e0313c49e58 |
|
MD5 | 284bfe8fd12a284c556760bf0b00ecb8 |
|
BLAKE2b-256 | a63bf06360364dc29272c61ebcf9bd531280f188e31fa27e140c52518ab66ed0 |