python_perl_storable - распаковывает структуру из формата perl-storable
Project description
python_perl_storable
NAME
python_perl_storable - распаковывает структуру из формата perl-storable
VERSION
0.0.3
DESCRIPTION
from python_perl_storable import thaw
class A:
def getX(self):
return self.x
data = thaw(storable_binary_string, classes={'A::A': A}, iconv=lambda s: s.decode('windows-1251'))
print(data) # -> {'x': <__main__.A instance at 0x7f7f532e1050>, 's': "Здравствуй, Мир!"}
print(data['x'].getX()) # -> 6
print(data['s']) # -> Здравствуй, Мир!
SYNOPSIS
В языке perl есть свой формат бинарных данных для упаковки любых структур: хешей, списков, объектов, регулярок, скаляров, файловых дескрипторов, ссылок, глобов и т.п. Он реализуется модулем https://metacpan.org/pod/Storable.
Данный формат довольно популярен и запакованные в бинарную строку данные различных проектов на perl хранятся во внешних хранилищах: mysql, memcached, tarantool и т.д.
Данный змеиный модуль предназначен для распаковки данных, полученных из таких хранилищ, в структуры python.
FUNCTIONS
thaw
ARGUMENTS
- storable - бинарная строка
- classes - словарь с классами. Необязательный параметр
- iconv - функция для конвертации строк не в utf8. Необязательный параметр
freeze
ARGUMENTS
- data - структура python
- classes - словарь с классами. Необязательный параметр
- iconv - функция для конвертации строк не в utf8. Необязательный параметр
RETURNS
Any
INSTALL
$ pip install python-perl-storable
REQUIREMENTS
- data-printer
LICENSE
Copyright (C) Yaroslav O. Kosmina.
This library is free software; you can redistribute it and/or modify it under the same terms as Python itself.
AUTHOR
Yaroslav O. Kosmina darviarush@mail.ru
LICENSE
MIT License
Copyright (c) 2020 Yaroslav O. Kosmina
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
Built Distribution
Hashes for python-perl-storable-0.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 53c285905214a7cdccef1a10e1b654e4d2e850a14c3f92a8a01cd79de265d6e0 |
|
MD5 | 873e71d66476f9b829fe493763740a64 |
|
BLAKE2b-256 | 8a87a8cea1316c922df2f4e6b3afe5d903430ddb553d0a8032ef4ee51a4c4324 |
Hashes for python_perl_storable-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7815c4eb2eaa80430dd3557c5ea769994358662e79c1857bf88a8b3190c3e2dc |
|
MD5 | 3b36c9a3a037c42cae5048238640d083 |
|
BLAKE2b-256 | e3c19f41348333bc90d6d8114125b38ba2618d3eea5f9bbc34b9f603167be841 |