px普贤教程PuXian
普贤教程 › 包参考

luhn 包

Luhn 校验位算法

项值
包名luhn
版本0.2.0
可用版本0.1.0 / 0.2.0
入口luhn.px
分类认证与安全
文件数 / 行数1 / 175

安装与引入

bash
pxpkg init          # 首次
pxpkg add luhn@0.2.0
pxpkg install
px
import luhn
所属分类教程:认证与安全

公开接口

函数参数
luhn_checks
luhn_appends
luhn_valids
luhn_cardname
其余 6 个 def(内部与辅助,可直接调用但不属稳定接口)
函数参数
luhn_is_digitc
luhn_sums
luhn_strips
luhn_card_types
luhn_generateprefix, total_len
luhn_formats

包内说明(源码头注释)

text
============================================================
普贤生态库:registry/luhn —— Luhn 校验位算法
------------------------------------------------------------
纯函数库(无 IO、无状态),编译(px build)与解释(px run)双模式一致。
luhn_check(s)  → Ok(int) | Err    计算校验位(s 为不含校验位的数字串)
luhn_append(s) → Ok(str) | Err    数字串 + 校验位
luhn_valid(s)  → bool             完整数字串(含校验位)是否合法
luhn_card(name) → Ok(str) | Err   常见卡号生成(测试用):vs/amex/mc/discover
算法:从右往左隔位×2,>9 减 9;校验位 = (10 - sum%10)%10。
对拍 Python:'7992739871' → 校验位 3(ISO 名片示例)。
============================================================