Skip to main content

A simple struct-like object for Python

Project description

https://travis-ci.org/Nurdok/basicstruct.svg https://coveralls.io/repos/Nurdok/basicstruct/badge.svg?branch=master&service=github

A simple struct-like object for Python. Compatible with Python 2.6+, 3.x, pypy and pypy3.

Installation

pip install basicstruct

Usage

To create your own struct, inherit from BasicStruct and define the field with the __slots__ class member. BasicStruct are efficient objects that are automatically comparable, hashable, picklable, printable and reprable.

from basicstruct import BasicStruct

class Point(BasicStruct):
    __slots__ = ('x', 'y')

p1 = Point(2, 3)
p2 = Point(1, y=6)
p3 = Point(x=0, y=0)

print(p1)  # prints: Point(x=2, y=3)

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page