Skip to main content

Number validator and generator based on luhn's formula

Project description

luhn-formula

Another python package of number validator and check digit generator based on Luhn's formula 😉. Luhn's formula was designed to protect against accidental input errors.

Licence PyPI PyPI - Downloads Python package Upload Python Package

Python 3.8 Python 3.9 Python 3.10 Python 3.11 Python 3.12

Usage

install

pip install luhn-formula

or

git clone git@github.com:code-127/luhn-formula-py.git

Example

>>> from luhnformula import luhnformula as lf
>>> lf.getcheckdigit("12345")
'5'
>>> lf.addcheckdigit("12345")
'123455'
>>> lf.isvalid("123455")
True

Function

checksum(number: str) -> int

Checksum vith the luhn formula
Args:
    number : Number to calculate
return:
    Result of luhn formula

isvalid(number: str) -> bool:

Validate number with the Luhn formula.
Args:
    number: Number to validate.
Returns:
    ``True`` when the: number is valid, otherwise ``False``.

getcheckdigit(number: str) -> str:

Generate check digit with the Luhn formula for a number.
Args:
    number: Number used to generate the check digit.
Return:
    the check digit for a number.
Raise error:
    ValueError : Invalid number.

addcheckdigit(number: str) -> str:

Generate and add check digit with the luhn formula for a number
Args:
    number: Number used to generate the check digit.
Return:
    the number with the check digit.
Raise error:
    ValueError : Invalid number.

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

luhn-formula-1.0.4.tar.gz (3.7 kB view hashes)

Uploaded Source

Built Distribution

luhn_formula-1.0.4-py3-none-any.whl (3.9 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