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根据出生日期返回年龄的方法 的全部内容, 来源链接: utcz.com/z/330409.html

回到顶部