python3身份证校验

python3身份证校验

  • 看到有朋友发了一个专门的身份证校验,就很感兴趣,好奇是什么原理。百度了下计算规则,发现python也可以实现。
  • 来源地址
  • 在线身份证校验

py3实现

  • 实际上就是根据身份证前17位,计算求和,然后取余找到对应的校验码。
# 身份证计算规则
# 身份证号码 最后一位随便填
s_id="530102199112214016"
# 系数
c_list=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
# 余数对应列表
s_c_list=["1","0","X","9","8","7","6","5","4","3","2"]

#s求和
s_sum=0
for index,i in enumerate(s_id[0:17]):
    s_sum=s_sum+int(i)*c_list[index]
    # print(s_sum)
# 求余数
c_mod=s_sum%11
result=s_id[0:17]+str(s_c_list[c_mod])
# 合法身份证
print(result)
posted @   Alex_Mercer  阅读(124)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示