def create_age(id):
from dateutil.parser import parse
from datetime import datetime
dt=datetime.now() #创建一个datetime类对象
# print(dt.year,dt.month,dt.day)
year=id[6:10]
month=id[10:12]
day=id[12:14]
# print(year+'年'+month+'月'+day+'日')
str_date = year+'-'+month+'-'+day
new_date = parse(str_date)
days = dt - new_date
age = round(days.days/365)
return age
这里需要用到datetime库生成当前时间,然后从身份证提取出生日期,再用parse()函数将字符串格式转换为时间格式。
上面代码中,new_date = parse(str_date)也可以写成:
new_date = datetime(int(year),int(month),int(day))