Python小白入门- 101 ( 工具篇) Python完成身份证号码校验的算法

根据国家标准GB 11643-1999《公民身份证号码》的要求:
身份证号码由18位组成,前17位为数字,最后一位是校验码,可能为数字或字母X。其中,前6位是地区代码,接下来8位是出生日期,最后3位是顺序号。

具体算法如下:

  1. 将身份证号码的前17位数字分别乘以不同的系数,系数如下:
    7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
  2. 将上步得到的结果相加,得到和值。
  3. 将和值对11取模,得到模值。
  4. 根据模值得到对应的校验码,对应关系如下:
    0 1 2 3 4 5 6 7 8 9 10
    1 0 X 9 8 7 6 5 4 3 2

因此,身份证校验的Python代码如下:

def check_id(id: str) -> bool:
    

猜你喜欢

转载自blog.csdn.net/yueyeguzhuo/article/details/129235669
今日推荐