Skip to main content

Use IDLE autocomplete feature to manage large amount of constants.

Project description

https://travis-ci.org/MacHu-GWU/constant-project.svg?branch=master https://img.shields.io/pypi/v/constant.svg https://img.shields.io/pypi/l/constant.svg https://img.shields.io/pypi/pyversions/constant.svg

Welcome to constant Documentation

If you have lots of constant value widely used across your development. A better way is to define Constant Variable rather than using the raw value. This will improve the readability of your codes.

constant is a library provide extensive way of managing your constant.

Example:

from constant import Constant
from constant.pkg.sixmini import PY3


class Food(Constant):

    class Fruit(Constant):
        id = 1
        name = "fruit"

        class Apple(Constant):
            id = 1
            name = "apple"

            class RedApple(Constant):
                id = 1
                name = "red apple"

            class GreenApple(Constant):
                id = 2
                name = "green apple"

        class Banana(Constant):
            id = 2
            name = "banana"

            class YellowBanana(Constant):
                id = 1
                name = "yellow banana"

            class GreenBanana(Constant):
                id = 2
                name = "green banana"

    class Meat(Constant):
        id = 2
        name = "meat"

        class Pork(Constant):
            id = 1
            name = "pork"

        class Meat(Constant):
            id = 2
            name = "meat"

You can visit it’s data or child class data in these way.

>>> Fruit.items() # .items() return it's data
[('id', 1), ('name', 'fruit')]

>>> Fruit.keys() # .keys() return keys
['id', 'name']

>>> Fruit.keys() # .values() return values
[1, 'fruit']

>>> Fruit.to_dict() # return data in a dict
{'id': 1, 'name': 'fruit'}

# iterate on all child class
>>> Fruit.collection(sort_by='id')
[class Apple, class Banana]

# get first child class that kls.id == 1
# useful when you need reverse lookup
>>> Fruit.get('id', 1)
class Apple

>>> Fruit.get('id', 1, multi=True) # get all child class that kls.id == 1
[class Apple, ]

Install

constant is released on PyPI, so all you need is:

$ pip install constant

To upgrade to latest version:

$ pip install --upgrade constant

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

constant-0.0.4.zip (63.5 kB view details)

Uploaded Source

File details

Details for the file constant-0.0.4.zip.

File metadata

  • Download URL: constant-0.0.4.zip
  • Upload date:
  • Size: 63.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for constant-0.0.4.zip
Algorithm Hash digest
SHA256 be9b89b553e2cd9440598442a23bf2c538f5d0d852ce17be5494b01d351f1a0b
MD5 5ccbde63fbd751d4e9cef0570d3162a5
BLAKE2b-256 2573c272439718f93933e10da7e0502752b9c349c8bebe0ed2df14e618838bb7

See more details on using hashes here.

Supported by

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