普贤教程 › 包参考
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_check | s |
luhn_append | s |
luhn_valid | s |
luhn_card | name |
其余 6 个 def(内部与辅助,可直接调用但不属稳定接口)
| 函数 | 参数 |
|---|---|
luhn_is_digit | c |
luhn_sum | s |
luhn_strip | s |
luhn_card_type | s |
luhn_generate | prefix, total_len |
luhn_format | s |
包内说明(源码头注释)
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 名片示例)。 ============================================================