Skip to main content

A Python typing library for data validation.

Project description

This library allows type tests and transformation and can be used for data loading, storing and validation.

Usage

Simple type-checking:

import typed

            t1 = typed.int | typed.string

            assert t1.test('abc')
            assert t1.test(u'xyz')
            assert t1.test(30)
            assert not t1.test(1.2)
            assert not t1.test(True)
            assert not t1.test(None)

            t2 = typed.list(typed.int)

            assert t1.test([1, 2, 3])
            assert t1.test([])
            assert not t1.test(['a', 'b', 'c'])

            t3 = typed.list(typed.int | typed.string)

            assert t3.test([1, 'a', 2, 'b'])

            t4 = typed.list(typed.int) | typed.list(typed.string)

            assert t4.test([1, 2, 3])
            assert t4.test(['a', 'b', 'c'])
            assert not t4.test([1, 'a', 2, 'b'])

            t5 = typed.set(1, 2, 3)

            assert t5.test(2)
            assert not t5.test(4)

            t6 = typed.dict({
                            'a': typed.int,
                            'b': typed.bool.optional,
                            'c': (typed.int | typed.none).optional,
                    })

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

typed-0.6.tar.gz (7.0 kB view details)

Uploaded Source

File details

Details for the file typed-0.6.tar.gz.

File metadata

  • Download URL: typed-0.6.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for typed-0.6.tar.gz
Algorithm Hash digest
SHA256 97bb17f283001e6bc893474db4ce0c9712642656c8ecbbca0a1d7f42aeae0b22
MD5 9fcba9bca02445c2c4800ec58955b985
BLAKE2b-256 41d26ee091aae2973bd29909089fd119de5221385354b7e35b3a2541bab3d874

See more details on using hashes here.

Supported by

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