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

yipeiwu_com7年前Python基础

本文实例讲述了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中函数可以作为参数进行传递,而也可以赋值给其他变量(类似Javascript,或者C/C++中的函数指针); 类似Javascript,Python支持函数嵌套,Javas...

Python实现CET查分的方法

Python CET自动查询方法需要用到的python方法模块有:sys、urllib2 本文实例讲述了Python实现CET查分的方法。分享给大家供大家参考。具体实现方法如下: 复制代...

Python实现Selenium自动化Page模式

Python实现Selenium自动化Page模式

Selenium是当前主流的web自动化工具,提供了多种浏览器的支持(Chrome,Firefox, IE等等),当然大家也可以用自己喜欢的语言(Java,C#,Python等)来写用例...

python matplotlib饼状图参数及用法解析

python matplotlib饼状图参数及用法解析

这篇文章主要介绍了python matplotlib饼状图参数及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在python...

Python中optionParser模块的使用方法实例教程

本文以实例形式较为详尽的讲述了Python中optionParser模块的使用方法,对于深入学习Python有很好的借鉴价值。分享给大家供大家参考之用。具体分析如下: 一般来说,Pyth...