根据身份证号码判断省份,年龄,性别

2024-03-07 13:38:15 浏览数 (1)

1 问题

如何通过身份证判断操作者的所属省份,年龄和性别?

2 方法

解决问题的步骤采用如下方式:

  1. 首先用字典储存省区编号,并于省区一一对应;
  2. 构造判断的函数;
  3. 用切片,从输入的身份证号码中截取信息输出;

通过实验、实践等证明提出的方法是有效的,是能够解决开头提出的问题。

代码清单 1

代码语言:text复制
iddic = {'11': '北京市', '12': '天津市', '13': '河北省', '14': '山西省', '15': '内蒙古自治区', '22': '吉林省',
        '23': '黑龙江省', '31': '上海市', '32': '江苏省', '33': '浙江省', '35': '福建省', '36': '江西省',
        '37': '山东省', '41': '河南省', '42': '湖北省', '44': '广东省', '45': '广西壮族自治区', '46': '海南省',
        '50': '重庆市', '51': '四川省', '53': '云南省', '54': '西藏自治区', '61': '陕西省', '62': '甘肃省',
        '63': '青海省', '65': '新疆维吾尔自治区', '71': '台湾省', '81': '香港', '82': '澳门'}
def idget(str):
   newstr = ''
   if iddic.get(str):
       newstr = iddic[str]
   return newstr
instr = input('请输入您的身份证号:\n')
if instr[:16].isdigit() and len(instr) == 18:
   print('你来自:', idget(instr[0:2]))
   print('你的生日是:'   instr[6:10]   '年'   instr[10:12]   '月'   instr[12:14]   '日')
   gender = '女' if int(instr[16]) % 2 == 0 or instr[16] == 'X' else '男'
   print('你的性别是:'   gender)

3 结语

针对如何用python判断输入的身份证号码输出所属省区,年龄,性别问题,提出字典储存省区编号并一一对应,切片截取有用信息方法,通过代码运行实验,证明该方法是有效的,本文的方法未来可以继续研究与十二生肖,星座运势等关联,实时反映还有多久是操作者生日的部分。

0 人点赞