Skip to main content

A pythonic library for floating point number comparison

Project description

Kinda

About

Kinda is a pythonic library for comparing floating point values with Python operator functions.

Arguments

The implementation and documentation are identical to math.isclose.

Comparisons

Equality

>>> import kinda
>>> # a == b
>>> kinda.eq(1.0000, 1.0000)
True
>>> # a != b (default precision)
>>> kinda.eq(0.9999, 1.0001)
False

Precision

All math.isclose() arguments are accepted in all functions.

  • abs_tol: absolute tolerance (abs(a - b))
  • rel_tol: percentage tolerance (1% = .01)
>>> # reduce absolute precision
>>> kinda.eq(0.9999, 1.0001, abs_tol=0.0002)
True
>>> # precision: 1%
>>> kinda.eq(1.0000, 1.0500, rel_tol=0.01)
False
>>> # precision: 5%
>>> kinda.eq(1.0000, 1.0500, rel_tol=0.05)
True

Inequality

>>> import kinda
>>> [kinda.ne(0.9999, 1.0001), kinda.ne(1.0000, 1.0000)]
[True, False]

Less/Greater Than

>>> import kinda
>>> # [a < b, a > b]
>>> [kinda.lt(1.0000, 1.0001), kinda.gt(1.0001, 1.0000)]
[True, True]

Less/Greater Than or Equal To

>>> import kinda
>>> kinda.le(1.0000, 1.0001) and kinda.ge(1.0000, 1.0001)
[True, False]
>>> kinda.le(1.0000, 1.0000) and kinda.ge(1.0000, 1.0000)
[True, True]
>>> kinda.le(1.0000, 0.9999) and kinda.ge(1.0000, 0.9999)
[False, True]

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

kinda-0.9.9.tar.gz (2.7 kB view hashes)

Uploaded Source

Built Distribution

kinda-0.9.9-py3-none-any.whl (3.1 kB view hashes)

Uploaded Python 3

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