Awesome Open Source
Awesome Open Source


Implements the EDN format in Python.

All features of EDN are implemented, including custom tagged elements.

Build Status PyPI version


pip install edn_format


>>> import edn_format
>>> edn_format.dumps({1, 2, 3})
'#{1 2 3}'
>>> edn_format.loads("[1 true nil]")
[1, True, None]
>>> edn_format.loads_all("1 2 3 4")
[1, 2, 3, 4]

In general, edn_format.loads(edn_format.dumps(obj)) == obj. If this is false, it may be a bug.

See for full details.


Special thanks to the following contributors for making this library usable:


Why immutable list & dict?

IIRC, it was related to :

edn will yield distinct object identities when read, unless a reader implementation goes out of its way to make such a promise. Thus the resulting values should be considered immutable, and a reader implementation should yield values that ensure this, to the extent possible.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
python (54,564
clojure (2,013
serialization (212
deserialization (51
edn (17