首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

PYTHON验证身份证号码准确性

大家每个人都有身份证,但是认真研究过自己那18位居民身份证号码的人可能真的不多,今天就跟大家简单聊一下身份证号码的构成形式及最后一位验证码的验证办法。...最开始呐先向大家介绍一下身份证号码的生成规则,特意找了一个最官方的文档,以下内容摘选于国家质量技术监督局编制的GB11643-1999《公民身份号码》 那么根据官方公布的以上五项标准,我们就可以自行提炼出一个居民身份证号码必须满足的一些条件了...没关系,简单翻译并且加工一下就是: 1.身份证号码前17位数分别乘以7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2 2.前17位数字和系数相乘的结果相加 3.相加的数据除以11,...10这11个数字,分别对应的身份证最后一位校验码为1,0,X,9,8,7,6,5,4,3,2(这个X其实是罗马数字的10) 根据以上我们提炼的规则我们就可以利用一些算法工具在一些简单的层面上去验证一个身份证号码的真假了...,用EXCEL、SAS、R、SQL、PYTHON都是可以的,下面我用PYTHON来示范一下,最终效果如下: 最后不废话放出代码: 上面那段代码中其实并没有把上面那五个条件都列入,感兴趣的话可以看一下是哪些条件没有列入

3.1K90

Python|趣解身份证号码的奥秘

问题描述 作为一个公民,每个人都有一张独一无二的身份证,有独一无二的身份证号码。在这里面几乎储存了我们所有的行踪与信息,所以有很多不法分子能够仅通过身份证号码进行一些犯罪活动。...解决方案 通过简单的查询,我们不难知道,其实身份证号码虽然独一无二,但其生成的规律确是固定的,仅仅通过公式便能确定一个身份证号码是否正确,反之也可以通过一个确定正确但不完整的身份证号码来反推完整信息。...,这样就得到自己的校验码,读者当然可以自己试试自己的身份证号码。...Python代码:判断身份证号是否真实 def ID_Card_judgment(ID_num): list1 = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2...%times) 这个代码要求输入的是生日为****的一串数字,也符合常见的隐藏身份证号码的规则。

1.3K20

Python随机生成身份证号码及校验功能

身份证号码从右至左标记为a_1 , a_2 , cdots , a_{18},a_1即为校验码; ?2....4. a_1=(12-( S bmod 11)) bmod 11 使用Python获取身份证校验码: def get_check_digit(id_number): """通过身份证号获取校验码"...随机生成身份证号码及校验功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。...您可能感兴趣的文章: Python随机生成彩票号码的方法 Python实现随机生成有效手机号码及身份证功能示例 Python生成随机数的方法 python 生成不重复的随机数的代码 Python生成不重复随机值的方法...Python生成随机MAC地址 Python随机生成信用卡卡号的实现方法 Python简单生成随机姓名的方法示例 Python实现随机创建电话号码的方法示例

4.8K31

我用python算出了同事的身份证号码!

浙江省宁波人,1993年滴 那我先用python生成1993年的所有日期吧 import time #生成出生当年所有日期 def dateRange(year): fmt = '%Y-%m-...给大家隆重介绍一个库:id-validator 安装:pip install id-validator 可以用来验证身份证号合法性、获取身份证号信息、生成可通过校验的假数据、身份证升级。 ?...那么我们利用 id-validator 来依次校验刚才生成的身份证号码。...打开12306官网, 在12306添加常用联系人, 将李大伟+身份证号依次输入。 若身份证和姓名一致,就会显示校验通过; 若不能通过,则说明身份证和姓名不一致。 ?...文中人物、身份证号码纯属虚构,如有雷同,就是抄我的。 作者:朱小五,某互联网公司数据分析师,热衷于爬虫,数据分析,可视化,个人公众号《凹凸玩数据》,带给大家有趣好玩的文章。

1K70

我用python算出了同事的身份证号码!

科普时间: 根据李大伟的身份证信息的前6位“330221” 轻易可得: 浙江省宁波人,1993年滴 那我先用python生成1993年的所有日期吧 import time #生成出生当年所有日期...给大家隆重介绍一个库:id-validator 安装:pip install id-validator 可以用来验证身份证号合法性、获取身份证号信息、生成可通过校验的假数据、身份证升级。...那么我们利用 id-validator 来依次校验刚才生成的身份证号码。...打开12306官网, 在12306添加常用联系人, 将李大伟+身份证号依次输入。 若身份证和姓名一致,就会显示校验通过; 若不能通过,则说明身份证和姓名不一致。...文中人物、身份证号码纯属虚构,如有雷同,就是抄我的。

50210

我用python算出了同事的身份证号码!

浙江省宁波人,1993年滴 那我先用python生成1993年的所有日期吧 import time #生成出生当年所有日期 def dateRange(year): fmt = '%Y-%m-...给大家隆重介绍一个库:id-validator 安装:pip install id-validator 可以用来验证身份证号合法性、获取身份证号信息、生成可通过校验的假数据、身份证升级。 ?...那么我们利用 id-validator 来依次校验刚才生成的身份证号码。...打开12306官网, 在12306添加常用联系人, 将李大伟+身份证号依次输入。 若身份证和姓名一致,就会显示校验通过; 若不能通过,则说明身份证和姓名不一致。 ?...文中人物、身份证号码纯属虚构,如有雷同,就是抄我的。 作者:朱小五,某互联网公司数据分析师,热衷于爬虫,数据分析,可视化,个人公众号《凹凸玩数据》,带给大家有趣好玩的文章。

1.2K30

我用python算出了同事的身份证号码!

浙江省宁波人,1993年滴 那我先用python生成1993年的所有日期吧 import time #生成出生当年所有日期 def dateRange(year): fmt = '%Y-%m-...给大家隆重介绍一个库:id-validator 安装:pip install id-validator 可以用来验证身份证号合法性、获取身份证号信息、生成可通过校验的假数据、身份证升级。 ?...那么我们利用 id-validator 来依次校验刚才生成的身份证号码。...from id_validator import validator #遍历所有日期,print通过校验的身份证号码 def vali_dator(id1,id2,id3): for i in...打开12306官网, 在12306添加常用联系人, 将李大伟+身份证号依次输入。 若身份证和姓名一致,就会显示校验通过; 若不能通过,则说明身份证和姓名不一致。 ?

61330

我用python算出了同事的身份证号码!

浙江省宁波人,1993年滴 那我先用python生成1993年的所有日期吧 import time #生成出生当年所有日期 def dateRange(year): fmt = '%Y-%m-...给大家隆重介绍一个库:id-validator 安装:pip install id-validator 可以用来验证身份证号合法性、获取身份证号信息、生成可通过校验的假数据、身份证升级。 ?...那么我们利用 id-validator 来依次校验刚才生成的身份证号码。...打开12306官网, 在12306添加常用联系人, 将李大伟+身份证号依次输入。 若身份证和姓名一致,就会显示校验通过; 若不能通过,则说明身份证和姓名不一致。 ?...文中人物、身份证号码纯属虚构,如有雷同,就是抄我的。 作者:朱小五,某互联网公司数据分析师,热衷于爬虫,数据分析,可视化,个人公众号《凹凸玩数据》,带给大家有趣好玩的文章。

1.3K60

身份证号码验证算法

做项目的时候需要对拿到的数据进行“清洗”,比如剔除一些不可能存在的身份证号码。查阅了网上的身份证号码验证算法,自己也总结一下。...(一)18身份证号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。 排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。 ...4、校验码计算步骤 (1)十七位数字本体码加权求和公式  S = Sum(Ai * Wi), i = 0, ... , 16 ,先对前17位数字的权求和  Ai:表示第i位置上的身份证号码数字值...2.该程序可以剔除验证码不正确的身份证号码。 3.15位的身份证出生年份采用年份后2位,没有最后1位校验码。 4.完整的身份证18位,最后一位校验位可能是非数字。

2.3K60

Python写一个身份证号码校验系统

这是一个用Python开发的GUI实战项目:居民身份证信息校验系统 一、总体介绍 本项目使用Tkinter作为GUI模块,充分利用Python面向对象的思想,开发一款实现身份证号码校验的应用程序。...具备解析用户输入的身份证号码中的地区信息、出生日期、以及身份证号码是否合法等功能。是一款练习Python面向对象思想、tkinter GUI模块的优质练手项目。 项目演示 ?...方法一:最好在新建一个空工程的根目录下就放上所有的python程序文件;方法二:或者鼠标选中工程目录,右键菜单选择Mark Directory as然后选择Sources Root即可。...身份证号码最后一位故意输错的情况 情况三:输入正确的身份证号码的情况 ?...输入正确的身份证号码的情况 最后 本项目利用Tkinter开发了一个身份证号码校验系统,能够识别用户输入的身份证号码的有效性,并且解析身份证号码的地区、出生日期、性别等有效信息,感兴趣的小伙伴可以直接后台私信

2.7K50

校验身份证号

之前在做项目的时候遇到了需要校验身份证号码,最初始的想法就是校验一下是否数字还有就是校验长度,后来想到有的身份证号的最末尾数字是X,于是又加入了一层判断末尾数为X的判断。...于是就在网上搜了一下,发现身份证号码是有规律和算法的,下面来看一下 根据〖中华人民共和国国家标准 GB 11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成...位的身份证编码首先把出生年扩展为4位,简单的就是增加一个19或18,这样就包含了所有1800-1999年出生的人; 2000年后出生的肯定都是18位的了没有这个烦恼,至于1800年前出生的,那啥那时应该还没身份证号这个东东...16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1 有了上面的算法就产生了如何利用js来校验身份证号码的算法了...cardid[i] * first[i]; } var result = sum % 11; var last = stard[result]; //计算出来的最后一位身份证号

2.5K32

身份证号校验规则

中国居民身份证号码编码规则 第一、二位表示省(自治区、直辖市、特别行政区)。 第三、四位表示市(地级市、自治州、盟及国家直辖市所属市辖区和县的汇总码)。...其中第一代身份证号码为15位。年份两位数字表示,没有校验码。...前六位详情请参考省市县地区代码 X是罗马字符表示数字10,罗马字符(1-12):Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ、Ⅵ、Ⅶ、Ⅷ、Ⅸ、Ⅹ、Ⅺ、Ⅻ……,详情请参考罗马字符 中国居民身份证校验码算法 步骤如下: 将身份证号码前面的...例如:某男性的身份证号码为【53010219200508011x】, 我们看看这个身份证是不是合法的身份证。...所以,可以判定这是一个正确的身份证号码。 未经允许不得转载:肥猫博客 » 身份证号校验规则

2K20

身份证号码验证算法

博客园 链接:http://www.cnblogs.com/xudong-bupt/p/3293838.html(点击尾部阅读原文前往) 做项目的时候需要对拿到的数据进行“清洗”,比如剔除一些不可能存在的身份证号码...查阅了网上的身份证号码验证算法,自己也总结一下。 (一)18身份证号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。...4、校验码计算步骤 (1)十七位数字本体码加权求和公式 S = Sum(Ai * Wi), i = 0, ... , 16 ,先对前17位数字的权求和 Ai:表示第i位置上的身份证号码数字值(0~9...2、该程序可以剔除验证码不正确的身份证号码。 3、15位的身份证出生年份采用年份后2位,没有最后1位校验码。 4、完整的身份证18位,最后一位校验位可能是非数字。

1.9K50
领券