Utils for simplifying work with classes
Project description
Utils for simplifying work with classes
Usage:
pip install class-utils
Properties:
Mixins:
default_property
from class_utils import default_property
class Point():
x = default_property('x')
y = default_property('y')
def __init__(self, x, y):
self.x = x
self.y = y
point1 = Point(1, 4)
print(point1.x) # => 1
point1.x = 3
print(point1.x) # => 3
default_getter
from class_utils import default_getter
class Point():
x = default_getter('x')
y = default_getter('y')
def __init__(self, x, y):
self._x = x
self._y = y
point1 = Point(1, 4)
print(point1.x) # => 1
typed_property
from class_utils import typed_property
class Person():
name = typed_property('name', str)
def __init__(self, name):
self.name = name
person1 = Person('Bill')
print(person1.name) # => 'Bill'
person1.name = 123 # => TypeError: name must be a <class 'str'>
DefaultRepresentationMixin
from class_utils import default_property, DefaultRepresentationMixin
class Date(DefaultRepresentationMixin):
day = default_property('day')
month = default_property('month')
year = default_property('year')
def __init__(self, day, month, year):
self.day = day
self.month = month
self.year = year
date1 = Date(12, 12, 2012)
print(date1) # => Date({'_day': 12, '_month': 12, '_year': 2012})
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
class-utils-0.0.5.tar.gz
(2.1 kB
view details)
Built Distribution
File details
Details for the file class-utils-0.0.5.tar.gz
.
File metadata
- Download URL: class-utils-0.0.5.tar.gz
- Upload date:
- Size: 2.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
1ec1c04d51e79dfa2fde856a59b47502469059fe5307c16f44b60b1eae769212
|
|
MD5 |
cdb8a64737bf98b877874f075340df55
|
|
BLAKE2b-256 |
e122341d1030516fff90985651044f1a7b39a7e418a367f87c6f9020c612783b
|
File details
Details for the file class_utils-0.0.5-py3-none-any.whl
.
File metadata
- Download URL: class_utils-0.0.5-py3-none-any.whl
- Upload date:
- Size: 3.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
3d1bc595ce681729c2631666077a98ec07d648ca6962159c6331eb236acca877
|
|
MD5 |
db4171c457b7af995f188e2bbe11ca49
|
|
BLAKE2b-256 |
dc884c47f811821be5a40cd444dcc20a90294c89b9c89f45c6084382a58d18e4
|