python根据出生日期返回年龄的方法


Posted in Python onMarch 26, 2015

本文实例讲述了python根据出生日期返回年龄的方法。分享给大家供大家参考。具体实现方法如下:

def CalculateAge(self, Date):
    '''Calculates the age and days until next birthday from the given birth date'''
    try:
      Date = Date.split('.')
      BirthDate = datetime.date(int(Date[0]), int(Date[1]), int(Date[2]))
      Today = datetime.date.today()
      if (Today.month > BirthDate.month):
        NextYear = datetime.date(Today.year + 1, BirthDate.month, BirthDate.day)
      elif (Today.month < BirthDate.month):
        NextYear = datetime.date(Today.year, Today.month + (BirthDate.month - Today.month), BirthDate.day)
      elif (Today.month == BirthDate.month):
        if (Today.day > BirthDate.day):
          NextYear = datetime.date(Today.year + 1, BirthDate.month, BirthDate.day)
        elif (Today.day < BirthDate.day):
          NextYear = datetime.date(Today.year, BirthDate.month, Today.day + (BirthDate.day - Today.day))
        elif (Today.day == BirthDate.day):
          NextYear = 0
      Age = Today.year - BirthDate.year
      if NextYear == 0: #if today is the birthday
        return '%d, days until %d: %d' % (Age, Age+1, 0)
      else:
        DaysLeft = NextYear - Today
        return '%d, days until %d: %d' % (Age, Age+1, DaysLeft.days)
    except:
      return 'Wrong date format'

使用方法如下:

print CheckDate('2000.05.05')

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python程序员鲜为人知但你应该知道的17个问题
Jun 04 Python
Python实现对比不同字体中的同一字符的显示效果
Apr 23 Python
Python的爬虫框架scrapy用21行代码写一个爬虫
Apr 24 Python
python3.6的venv模块使用详解
Aug 01 Python
Opencv-Python图像透视变换cv2.warpPerspective的示例
Apr 11 Python
pyinstaller打包多个py文件和去除cmd黑框的方法
Jun 21 Python
解决pyqt5异常退出无提示信息的问题
Apr 08 Python
基于Python的Jenkins的二次开发操作
May 12 Python
Python TestSuite生成测试报告过程解析
Jul 23 Python
Python爬虫新手入门之初学lxml库
Dec 20 Python
tensorboard 可视化之localhost:6006不显示的解决方案
May 22 Python
Pytorch中的数据集划分&正则化方法
May 27 Python
python获取远程图片大小和尺寸的方法
Mar 26 #Python
python使用cStringIO实现临时内存文件访问的方法
Mar 26 #Python
python使用pil生成缩略图的方法
Mar 26 #Python
python实现基于两张图片生成圆角图标效果的方法
Mar 26 #Python
python正则表达式match和search用法实例
Mar 26 #Python
python根据开头和结尾字符串获取中间字符串的方法
Mar 26 #Python
pymongo实现控制mongodb中数字字段做加法的方法
Mar 26 #Python
You might like
建立文件交换功能的脚本(二)
2006/10/09 PHP
缓存技术详谈―php
2006/12/14 PHP
discuz7 phpMysql操作类
2009/06/21 PHP
php中使用接口实现工厂设计模式的代码
2012/06/17 PHP
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
2013/04/22 PHP
php cli 小技巧
2013/06/03 PHP
如何使用PHP获取指定日期所在月的开始日期与结束日期
2013/08/01 PHP
解决php接收shell返回的结果中文乱码问题
2014/01/23 PHP
twig模板获取全局变量的方法
2016/02/05 PHP
php模板引擎技术简单实现
2016/03/15 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
2016/05/19 PHP
PHP设计模式之模板方法模式实例浅析
2018/12/20 PHP
js弹出层之1:JQuery.Boxy (二)
2011/10/06 Javascript
ASP.NET jQuery 实例14 在ASP.NET form中校验时间范围
2012/02/03 Javascript
jquery实现的下拉和收缩效果示例
2014/08/21 Javascript
JS的数组迭代方法
2015/02/05 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
javascript动态创建链接的方法
2015/05/13 Javascript
js仿微博实现统计字符和本地存储功能
2015/12/22 Javascript
使用Javascript实现选择下拉菜单互移并排序
2016/02/23 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
MySQL中表的复制以及大型数据表的备份教程
2015/11/25 Python
python实现Zabbix-API监控
2018/09/17 Python
解决python3.5 正常安装 却不能直接使用Tkinter包的问题
2019/02/22 Python
Python实现简单层次聚类算法以及可视化
2019/03/18 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
2019/06/24 Python
Python 支持向量机分类器的实现
2020/01/15 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
Python函数必须先定义,后调用说明(函数调用函数例外)
2020/06/02 Python
过程装备与控制工程专业个人的求职信
2013/12/01 职场文书
小溪流的歌教学反思
2014/02/13 职场文书
合作协议书怎么写
2014/04/18 职场文书
入党自荐书范文
2015/03/05 职场文书
党支部意见范文
2015/06/02 职场文书
2016年圣诞节义工活动总结
2016/04/01 职场文书
Python游戏开发实例之graphics实现AI五子棋
2021/11/01 Python