formats

Support multiple formats with ease


Keywords
formats, load, dump, parse, compose, convert
License
MIT
Install
pip install formats==0.1.1

Documentation

Formats

Support multiple formats with ease.

Installation via PIP:

pip install --pre formats

Quick usage overview:

>>> import formats
>>> formats.discover()
>>> text = '''
...     awesome_things:
...     - dodos
...     - pythons
... '''
>>> formats.parse('yaml', text)
{'awesome_things': ['dodos', 'pythons']}
>>> formats.convert('yaml', 'json', text)
'{"awesome_things": ["dodos", "pythons"]}'

The Basics

Formats will provide you with a consistent API to parse and compose data.

Registering new formats

import formats
import someformat

formats.register('someformat', someformat.loads, someformat.dumps)
# or
formats.register_parser('someformat', someformat.loads)
formats.register_composer('someformat', someformat.dumps)

Creating your own formats

You could of course use the register method to register your own parser, but decorators are much more fun!

import formats

@formats.parser('text')
def text_parser(text):
    return text

@formats.composer('text')
def text_composer(text):
    return text