一个可以离线检验公民身份号码是否合法的程序
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 details)
Built Distribution
pymod112-0.1.4-py3-none-any.whl
(31.7 kB
view details)
File details
Details for the file pymod112-0.1.4.tar.gz
.
File metadata
- Download URL: pymod112-0.1.4.tar.gz
- Upload date:
- Size: 33.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dec1107441dc6d4c559129efc1b00cababfb5a504b6800e244b2b0178d8375ce |
|
MD5 | 56b73514d82dc54e770679142b028c21 |
|
BLAKE2b-256 | 628b3f4d6ba0bc06ad1d555efc8c510d6347d74d4bfd0574a15ee4a9ddf0411b |
File details
Details for the file pymod112-0.1.4-py3-none-any.whl
.
File metadata
- Download URL: pymod112-0.1.4-py3-none-any.whl
- Upload date:
- Size: 31.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2dab9f50bcc91f63ce5fca2a0cdf17788e848403da5e9c38954e380dc68acbb0 |
|
MD5 | 0bc5939a1db8f674aa026b16621d8b1c |
|
BLAKE2b-256 | 56a157f4aa18a0b2d6f90fe731b1d61ec4552f1390d42a3cdcd228de181967ef |