一个可以离线检验公民身份号码是否合法的程序
Project description
pymod112
一个基于Python开发的公民身份号码检验与地区代码查找程序
by HoshsL
安装
使用pip安装,仅支持Python 3.10及以上版本
pip install pymod112
使用
校验身份证号码(隐藏详情)
>>> import pymod112
>>> pymod112.mod112('11010519491231002X')
True
校验身份证号码(显示详情)
>>> import pymod112
>>> pymod112.mod112('11010519491231002X', details=True)
{'id': '11010519491231002X',
'province': ['11', '北京市'],
'city': ['01', ''],
'county': ['05', '朝阳区'],
'birth_date': ['1949', '12', '31'],
'gender': '女',
'result': True,
'problem': '000'}
查询地区代码对应的地区名
>>> import pymod112
>>> pymod112.code2location('110105')
['北京市', '', '朝阳区']
查询地区名对应的地区代码
>>> import pymod112
>>> pymod112.location2code(['北京市', '朝阳区'])
'110105'
返回全部错误代码及其对应内容
>>> import pymod112
>>> pymod112.CODE2ERROR
{'000':'不存在问题',
'001':'缺失关键文件',
'002':'参数location长度错误',
'003':'参数code长度错误',
'004':'参数id长度错误',
'005':'参数id内容包含非法字符',
'006':'参数id不合法',
'007':'参数id中包含不存在的地区',
'008':'参数id中包含不存在的时间'}
许可证
MIT License
更新日志
0.1.4(2024-9-21)
- 错误修复
- 修复了资源缺失的问题
- 新增
- 新增最早出生时间检查
- 新增错误代码'001'
- 新增对关键资源的检查
- 已知问题
- 存在地址检查出错的可能性
0.1.2(2023-8-5)
- 错误修复
- 修复了参数id来自同年的未来时间也可能通过时间校验的问题
- 修复了参数id最后一位不合法但不会返回错误代码005的问题
- 新增
- 新增函数location2code以方便查询行政区划代码
- 改进
- 修改了一个函数名(code_to_location -> code2location)
- 修改了一个常量名(code_to_error -> CODE2ERROR)
- 函数code2location参数code要求类型由list变为str
- 更新了CODE2ERROR
- 函数mod112返回中'gender'的值变为'男'或'女'
- 其它
- 开源许可证更改为MIT License
0.1.1(2023-7-2)
- 加入参数类型检查
- 优化错误代码(停用001 002 003)
- 删除函数problem()
0.1.0(2023-6-24)
- 这是第一个正式发行版
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
pymod112-0.1.4.tar.gz
(33.5 kB
view hashes)
Built Distribution
pymod112-0.1.4-py3-none-any.whl
(31.7 kB
view hashes)