Python判断身份证是否合法
利用正则表达式实现对身份证合法程度的判断
1 # !usr/bin/env python3 2 # coding:utf-8 3 """ 4 @ Copyright (c)2020,高铁学院学生 5 @ All rightsreserved 6 @ Author: LingluSenior 7 @ Blog(个人学习网): xlcybk.github.io 8 @ WeChat Official Account(微信公众号): LingluSenior 9 10 @ File: idcard_legal.py 11 @ Time: 2020/5/28 10:48 12 13 @Motto: 不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! 14 """ 15 import re 16 while(True): 17 id_card = input("请输入身份证号码:") 18 key = "^[1-9]{2}\d{4}(18|19|20)\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$" 19 brea = re.match(key,id_card) 20 if brea != None : 21 print(brea.group()) 22 print("你的身份证号码为:" + brea.group()) 23 year = int(id_card[6:10]) # 截取年份 24 month = int(id_card[10:12]) # 截取月份 25 day = int(id_card[12:14]) # 截取日期 26 sex = int(id_card[16]) #截取性别奇数为男反之为女 27 print("你的出生年日期为:%s" % year, month, day) 28 if sex % 2 == 0: 29 print("该身份证号码的持证人为女性") 30 else: 31 print("该身份证号码的持证人为男性") 32 33 print("=" * 30) 34 break 35 else : 36 print("匹配失败,请重新输入")

 
                
             
         浙公网安备 33010602011771号
浙公网安备 33010602011771号