A set of tools for simplifying reading and writing of single values to/from Redis.
Project description
PyRedisEasyIO
A project to simplify reading/writing single objects from/to redis
Description
Redis is a great way to share data between applications - or processes in an application. However, in its raw form, the application has to deal with data type conversion to/from string, check for existence, and other pesky stuff. It would be nice if that were abstracted in such a way to where it didn't appear in code that redis was being used at all.
This project seeks to allow the exchange of single data points in a readable way, eg. my_data.my_value = 30 (automatically writes '30' to redis)
Installation
pip install pyrediseasyio
Usage
The basis of functionality is the IOGroup class. It acts as a container for individual values and performs the behind-the-scenes reads and writes.
from io_group import IOGroup
from single_io import BooleanIO, IntIO, FloatIO
class TestGroup1(IOGroup):
Bool1 = BooleanIO("Boolean 1", "Bool1", False)
Bool2 = BooleanIO("Boolean 2", "Bool2", True)
Int1 = IntIO("Integer 1", "Int1")
Int2 = IntIO("Integer 2", "Int2", default=34)
Float1 = FloatIO("Float 1", "Float1", default=1.2)
class TestGroup2(IOGroup):
Bool1 = BooleanIO("Boolean 1", "Bool1", False)
Bool2 = BooleanIO("Boolean 2", "Bool2", True)
Int1 = IntIO("Integer 1", "Int1")
Int2 = IntIO("Integer 2", "Int2", default=34)
Float1 = FloatIO("Float 1", "Float1", default=1.2)
group1a = TestGroup1()
group1b = TestGroup1()
group2 = TestGroup2()
group1a.Float1 = 1234.5
print(group1b.Float1.value)
print(group2.Float1.value)
That is really all there is to it. For more specific cases, see the unit tests.
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 pyrediseasyio-0.0.13-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b07b499431671816a4123bebec02520dd648361e907a2bf96b1f01c57645c4b |
|
MD5 | 4240dd19db9629087ace2750915904a0 |
|
BLAKE2b-256 | f74af638e6bbe0a7bfb024ad436b0b28de5df63e90cf9458674eebf1384c46fd |