用python实现身份证号的解析(输出性别,生日,生肖,星座)
生活随笔
收集整理的這篇文章主要介紹了
用python实现身份证号的解析(输出性别,生日,生肖,星座)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
用python實現身份證號的解析,輸出性別,生日,生肖,星
實現功能:
1、解析生日
2、解析性別
3、解析所在省份
4、解析生肖,星座
代碼如下:
ID=input('請輸入18位身份證號碼:'); if len(ID)==18:print('您輸入的身份證號碼是:'+ID); else:print('你輸入的身份證號碼錯誤,請重新輸入:');ID=input('請輸入18位身份證號碼:');ID_add=ID[0:2] #省份,截出前兩位 2個數 ID_birth=ID[6:14] #8個數 ID_sex=ID[16:17] #1個數 #print(ID_add,ID_birth,ID_sex) pro={'11':'北京','12':'天津','13':'河北','14':'山西','15':'內蒙','21':'遼寧','22':'吉林','23':'黑龍江','31':'上海','32':'江蘇','33':'浙江','34':'安徽','35':'福建','36':'江西','37':'山東','41':'河北','42':'湖北','43':'湖南','44':'廣東','45':'廣西','46':'海南','50':'重慶','51':'四川','52':'貴州','53':'云南','54':'西藏','61':'陜西','62':'甘肅','63':'青海','64':'寧夏','65':'新疆','71':'臺灣','81':'香港'}sx='猴雞狗豬鼠牛虎兔龍蛇馬羊'def getbirth(a): #讀取生日,生肖函數year=a[0:4]moon=a[4:6]day=a[6:]y=int(year)%12print('您的生日為:'+year+'年'+moon+'月'+day+'日')print('您的生肖為:',sx[y])getbirth(ID_birth)def getsex(a): #讀取性別函數if int(a)%2==0:print('您的性別為: 女')else :print('您的性別為: 男')getsex(ID_sex)def getxz(a): month=int(a[4:6])day=int(a[6:8])n = ('摩羯座','水瓶座','雙魚座','白羊座','金牛座','雙子座','巨蟹座','獅子座','處女座','天秤座','天蝎座','射手座')d = ((1,20),(2,19),(3,21),(4,21),(5,21),(6,22),(7,23),(8,23),(9,23),(10,23),(11,23),(12,23))m=n[len(list(filter(lambda y:y<(month,day),d)))%12]print('您的星座為:',m)getxz(ID_birth)def getpro(key): #讀取省份函數key_list=list(pro.keys())if key in key_list:print('您所在的省份為:',pro[key])else:print('未查到對應的省份,請核實身份證號碼是否正確!')getpro(ID_add)by 久違 2019.9.26 ```總結
以上是生活随笔為你收集整理的用python实现身份证号的解析(输出性别,生日,生肖,星座)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RKE学习手记
- 下一篇: EXCEL模糊查找而不是精确查找,如何在