1、测试

import pandas as pd
import datetime
temp_data='110221195404083625'
v_start_date=temp_data[6:14]
now = datetime.datetime.now()
now = now.strftime('%Y%m%d')
v_year_end=datetime.datetime.strptime(now, '%Y%m%d').year
v_month_end=datetime.datetime.strptime(now, '%Y%m%d').month
v_day_end=datetime.datetime.strptime(now, '%Y%m%d').day
v_year_start=datetime.datetime.strptime(v_start_date, '%Y%m%d').year
v_month_start=datetime.datetime.strptime(v_start_date, '%Y%m%d').month
v_day_start=datetime.datetime.strptime(v_start_date, '%Y%m%d').day#1、若今天的月大于生日的月,年龄=今年的年-生日的年
if v_month_end>v_month_start:age=v_year_end-v_year_start
#2、若今天的月小于生日的月,年龄=今年的年-生日的年-1
elif v_month_end<v_month_start:age=v_year_end-v_year_start-1
#3、若今天的月等于生日的月:
else:
#    若今天的日小于生日的日,年龄=今年的年-生日的年-1if v_day_end<v_day_start:age=v_year_end-v_year_start-1
#    若今天的日大于等于生日的日,年龄=今年的年-生日的年else:age=v_year_end-v_year_start

2、封装

def calculate_age(temp_data):'''Function: 根据身份证计算周岁年龄Parameters: temp_data为身份证号Return: 该身份证号周岁年龄计算逻辑:若今天计算周岁有以下几个特征:1、若今天的月大于生日的月,年龄=今年的年-生日的年2、若今天的月小于生日的月,年龄=今年的年-生日的年-13、若今天的月等于生日的月:若今天的日小于生日的日,年龄=今年的年-生日的年-1若今天的日大于等于生日的日,年龄=今年的年-生日的年    '''v_start_date=temp_data[6:14]now = datetime.datetime.now()now = now.strftime('%Y%m%d')v_year_end=datetime.datetime.strptime(now, '%Y%m%d').yearv_month_end=datetime.datetime.strptime(now, '%Y%m%d').monthv_day_end=datetime.datetime.strptime(now, '%Y%m%d').dayv_year_start=datetime.datetime.strptime(v_start_date, '%Y%m%d').yearv_month_start=datetime.datetime.strptime(v_start_date, '%Y%m%d').monthv_day_start=datetime.datetime.strptime(v_start_date, '%Y%m%d').day#1、若今天的月大于生日的月,年龄=今年的年-生日的年if v_month_end>v_month_start:age=v_year_end-v_year_start#2、若今天的月小于生日的月,年龄=今年的年-生日的年-1elif v_month_end<v_month_start:age=v_year_end-v_year_start-1#3、若今天的月等于生日的月:else:#    若今天的日小于生日的日,年龄=今年的年-生日的年-1if v_day_end<v_day_start:age=v_year_end-v_year_start-1#    若今天的日大于等于生日的日,年龄=今年的年-生日的年else:age=v_year_end-v_year_startreturn age

3、调用

col_name='身份证号'
data=pd.DataFrame({col_name:['110221195404083625','110221195104073628','110109196404090678','110109195706010923','110109195501031210']})
data['age']=data[col_name].apply(lambda x:calculate_age(x))

根据身份证号计算周岁年龄相关推荐

  1. Java 根据身份证号计算周岁年龄 工具类

    package com.yao.utils; import java.util.Calendar; /**  * 根据身份证号计算周岁年龄  * @author yaodd  * @date 2021 ...

  2. java通过身份证号计算周岁年龄(附js计算)

    最近项目上有一个需要根据身份证获取老人周岁的功能,本以为当前年直接减去身份证的出生年就好了.结果测试提了过了生日就是+1岁,没过生日才是正确的.于是呼,哗哗的改代码.下面分别贴出java计算和js计算 ...

  3. java根据身份证号计算持有者年龄--超容易

    主要思路很简单: 1.通过当前年份和用户出生年份相减计算出age :用户当年还没过生的话,age要减一. 2.在身份证截取根据"月日"拼接成开头可以为0的四位数int值.根据当前月 ...

  4. PHP根据身份证号计算年龄和年龄分段

    PHP根据身份证号计算年龄和年龄分段 /*** @param $id 身份证号* @return string* 根据身份证号判断年龄和年龄分段*/public function getAgeByID ...

  5. sql server 根据身份证号计算出生日期和年龄的存储过程

    我这边有一个业务,需要客户填写身份证号,自动计算他的出生日期和年龄 在sql中,具体的存储过程实现是这样的: /******************************************** ...

  6. js中如何通过身份证号计算出生日期和年龄

    在html中有如下标签 身份证号:<input type="text" id="Gra_IDCard" onChange="IDCardChan ...

  7. 在JS中根据身份证号计算出生日期和年龄

    1.根据身份证号计算出生日期 var identificationCardid=document.getElementById("identificationCardid").va ...

  8. EXCEL表格-根据身份证号计算性别、年龄(IF、MOD函数)

    ❤关注我,不迷路❤ 点击进入EXCEL综合应用场景专栏 本篇文章将介绍如何根据身份证号来计算出年龄.性别,先来讲解一些基础知识: 身份证号共18位,其中: (1)前1.2位数字表示:所在省份的代码: ...

  9. 根据身份证号计算年龄

    根据身份证号计算年龄     /// <summary>     /// 计算年龄     /// </summary>     /// <param name=&quo ...

  10. Python根据身份证号计算年龄和退休时间并保存Excel文件

    封面图片:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情: 用书教师可以联系董老师获取教学大纲.课件.源码.教案.考试系统等配 ...

最新文章

  1. ERROR: Manifest merger failed : uses-sdk:minSdkVersion 24 cannot be smaller than version 27 declared
  2. OpenCV3.3中支持向量机(Support Vector Machines, SVM)实现简介及使用
  3. 【2021斯坦福新书】统计学思维,300页pdf
  4. Android Jetpack组件之ViewModel使用
  5. 用MySQL创建“江湖”数据库
  6. [网络安全自学篇] 八.Web漏洞及端口扫描之Nmap、ThreatScan和DirBuster原理详解
  7. C ++或Java,高频交易哪个更快?
  8. 假如你心中有个莎乐美
  9. ElasticSearch-6.3.2 linux 安装
  10. 对垒 AI 领域?Google 和苹果竞相收购初创公司
  11. 洛谷——P1146 硬币翻转
  12. (大数据工程师学习路径)第三步 Git Community Book----基本用法(下)
  13. docker使用阿里云仓库上传与下拉images
  14. 使用VC做一个简单的UI界面对话框
  15. scheme 微博_可用App URL Schemes
  16. 硕士论文查重原理与快速通过的七大方法(转载)
  17. 2021牛客寒假算法基础集训营1(A B C D E F H I J)
  18. 【翻译】代码指针完整性——Code Pointer Integrity
  19. 北理工大学计算机专硕学硕,计算机2年制专硕越来越少,生活终于对我下手了吗?...
  20. 一文深度剖析ConcurrentHashMap

热门文章

  1. 数字图像处理-冈萨雷斯(学习笔记)
  2. iOS 9键盘类型合集
  3. 蒸汽管道图纸符号_水暖工程图纸中的符号表示
  4. php更换wordpress用户头像,WordPress用户头像不显示的解决方法
  5. 通达信标记符号_通达信符号大全
  6. WIN7中文专业版安装英文语言包的方法
  7. SAP CDS View基础语法
  8. android中动态壁纸下载,手机动态桌面壁纸(Video live wallpaper)
  9. 小米平板4/4plus手机屏幕驱动板使用步骤说明
  10. 多线程抓取链家网数据