python 根据生日计算年龄 sqlalchemy根据身份证号计算生日 性别
- import datetime
- def calculate_age(birth_s=''):
- birth_d = datetime.datetime.strptime(birth_s, "%Y%m%d")
- today_d = datetime.datetime.now()
- birth_t = birth_d.replace(year=today_d.year)
- if today_d > birth_t:
- age = today_d.year - birth_d.year
- else:
- age = today_d.year - birth_d.year - 1
- print('出生日期:%s' % birth_d)
- print('今年生日:%s' % birth_t)
- print('今天日期:%s' % today_d)
- print('如果今天日期大于今年生日,今年-出生年=年龄')
- print('如果今天日期不大于今年生日,今年-出生年-1=年龄')
- print('年龄:%s' % age)
- return age
- if __name__ == '__main__':
- print(calculate_age(''))
放入sqlalchemy模型定义中,id_Num是身份证号,其中6-14位是出生日期。
- @property
- def age(self):
- if len(self.id_Num) > 14:
- birth_s = self.id_Num[6:14]
- birth_d = datetime.datetime.strptime(birth_s, "%Y%m%d")
- today_d = datetime.datetime.now()
- birth_t = birth_d.replace(year=today_d.year)
- if today_d > birth_t:
- age = today_d.year - birth_d.year
- else:
- age = today_d.year - birth_d.year - 1
- else:
- age = 0
- return age
引申一下,有身份证以后,性别也可以计算出来
- @property
- def gender(self):
- if len(self.IdNum) > 17:
- tag = self.IdNum[16:17]
- if (int(tag) % 2) == 0:
- result = '女'
- else:
- result = '男'
- else:
- result = '未知'
- return result
加一个excel算性别
=IF(MOD(MID(D4,17,1),2),"男","女")
python 根据生日计算年龄 sqlalchemy根据身份证号计算生日 性别的更多相关文章
- js中如何通过身份证号计算出生日期和年龄
在html中有如下标签 身份证号:<input type="text" id="Gra_IDCard" onChange="IDCardChan ...
- sql server 根据身份证号计算出生日期和年龄的存储过程
我这边有一个业务,需要客户填写身份证号,自动计算他的出生日期和年龄 在sql中,具体的存储过程实现是这样的: /******************************************** ...
- 教你一招:根据身份证号计算出生年月和年龄 text函数和mid函数混用 datedif函数和today函数混用
在电子表格Excel中,使用text函数和mid函数混用,根据身份证号计算出生年月: =text(mid(A2,,),"0!/00!/00") #0!/00!/00 为日期的格式# ...
- SQL语句通过身份证号计算年龄
SQL语句通过身份证号计算年龄 1.截取身份证号上的出生日期 身份证一般为18位数和15位数 18位数身份证的第7-10位数是出生年份,第11-14位数是出生月日,所以18位身份证的年龄计算如下 su ...
- oracle 根据身份证号计算出生日期
1.情景展示 如何根据身份证号推算出出生日期? 2.解决方案 --根据身份证号计算出生日期 SELECT DECODE(LENGTH(ID_CARD), 18, SUBSTR(ID_CARD, 7 ...
- 从身份证号提取生日并更新到生日字段中的SQL语句
1:根据身份证号 更新 生日字段 SQL update 学生信息 ,)+,)+,) 2:根据身份证号 更新 性别字段 SQL update 学生信息 set 性别='男' and substring( ...
- sqlalchemy 模型中添加根据身份证号计算性别和年龄
class Users(Base, BaseMixin): username = Column(String(24)) id_Num = Column(String(18) ) # 身份证号码 @pr ...
- EXCEL计算根据当前时间和身份证号计算准确年龄
假设身份证号在A2单元格 =IF(MONTH(NOW())<MONTH(DATE(MID(A2,7,4),MID(A2,11,2),MID(A2,13,2))),INT(YEAR(NOW())- ...
- JS通过身份证号获取生日、年龄、性别
<script> function IdCard(UUserCard,num){ if(num==1){ //获取出生日期 birth=UUserCard.substring(6, 10) ...
随机推荐
- selenium-1-python
python selenium from selenium import webdriver from selenium.webdriver.common.action_chains import A ...
- vue router 中,children 中 path 为空字符串的路由,是默认打开的路由(包括在 el-tabs 中嵌套路由的情况)
详见该页面的最后一个代码块:https://router.vuejs.org/zh/guide/essentials/nested-routes.html#%E5%B5%8C%E5%A5%97%E8% ...
- python--io多路复用之select实现
1.I/O多路复用指:通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作. 2.I/O多路复用避免阻塞在io上,原本为多进程或多线程来接收多 ...
- linux查看大文件
du -h --max-depth=1
- 2.Servlet入门
一.Servlet简介 Servlet为sun公司开发动态web的一门技术 Sun公司在这些API中提供了一个接口叫做:Servlet,如果想开发Servlet程序,需要完成两个小步骤: 编写一个类, ...
- 全部文章> Maven
Maven 原 Maven中<resources>标签详解 &nbsp;&nbsp;&nbsp;&nbsp;& ...
- A1113 | Integer Set Partition (25)
太简单了 #include <stdio.h> #include <memory.h> #include <math.h> #include <string& ...
- python爬虫出现ProxyError: HTTPSConnectionPool错误
在今天刚刚打开pycharm运行爬虫时,发现所有的爬虫都不能运行,会出现如下的错误: 错误出现的主要原因是;代理错误(其实自己根本没有设置代理) 解决方法: 在网上查阅了许多类似的错误解决方法,试过后 ...
- 如何使用Processing获取图片中每一个像素的坐标
剛好碰到有同學問如何在Processing中進行像素級的圖片處理, =============================================================此時需要一 ...
- markdown转html
今天临时要写接口文档,然后发现部门给的文档是markdown文件的,而接口文档是要html格式的,因此想直接把markdown转为html 这里我使用的是marked 首先初始化一个node项目 np ...