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

 这篇文章主要介绍了python根据出生日期返回年龄的方法,实例分析了Python时间操作的技巧,非常具有实用价值,需要的朋友可以参考下

 
 

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

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

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'

使用方法如下:

?

1

print CheckDate('2000.05.05')

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

时间: 2024-10-26 11:42:38

python根据出生日期返回年龄的方法的相关文章

python根据出生日期返回年龄的方法_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

Python中用于返回绝对值的abs()方法

  这篇文章主要介绍了Python中用于返回绝对值的abs()方法,是Python入门中的基础知识,需要的朋友可以参考下 方法abs() 返回x的绝对值,-x-零之间的(正极)的距离. 语法 以下是abs()方法的语法: ? 1 abs( x ) 参数 x -- 这是一个数值表达式 返回值 此方法返回x的绝对值. 例子 下面的例子显示abs()方法的使用. ? 1 2 3 4 5 #!/usr/bin/python   print "abs(-45) : ", abs(-45) pri

python在windows下实现ping操作并接收返回信息的方法_python

本文实例讲述了python在windows下实现ping操作并接收返回信息的方法.分享给大家供大家参考.具体分析如下: 这段python代码调用windows下的ping命令,通过subprocess在其子进程里面实现,由于windows下的ping和linux下的ping返回的消息不太一样,所以这段python代码要想在linux下运行,需要修改一下正则匹配 复制代码 代码如下: import subprocess   import re p = subprocess.Popen(["ping

在Python中操作字典之clear()方法的使用

  这篇文章主要介绍了在Python中操作字典之clear()方法的使用,是Python入门的基础知识,需要的朋友可以参考下 clear()方法将删除字典中的所有项目(清空字典) 语法 以下是clear()方法的语法: ? 1 dict.clear() 参数 NA 返回值 此方法不返回任何值. 例子 下面的例子显示了clear()方法的使用 ? 1 2 3 4 5 6 7 #!/usr/bin/python   dict = {'Name': 'Zara', 'Age': 7};   print

在Python中操作字典之fromkeys()方法的使用

  这篇文章主要介绍了在Python中操作字典之fromkeys()方法的使用,是Python入门的基础知识,需要的朋友可以参考下 fromkeys()方法从序列键和值设置为value来创建一个新的字典. 语法 以下是fromkeys()方法的语法: ? 1 dict.fromkeys(seq[, value])) 参数 seq -- 这是将用于字典的键准备的值的列表. value -- 这是可选的,如果提供的话则值将被设置为这个值 返回值 此方法返回列表. 例子 下面的例子显示fromkeys

在Python中操作字典之setdefault()方法的使用

  这篇文章主要介绍了在Python中操作字典之setdefault()方法的使用,是Python入门学习中的基础知识,需要的朋友可以参考下 setdefault()方法类似于get()方法,但会设置字典[键]=默认情况下,如果键不是已经在字典中. 方法 以下是setdefault()方法的语法: ? 1 dict.setdefault(key, default=None) 参数 key -- 这是要被搜索的键 default -- 这是没有找到键的情况下返回的值. 返回值 此方法返回字典可用的

在Python中处理字符串之isdecimal()方法的使用

  这篇文章主要介绍了在Python中处理字符串之isdecimal()方法的使用,是Python入门学习的基础知识,需要的朋友可以参考下 isdecimal()方法检查字符串是否仅由十进制字符组成.此方法只存在于unicode对象. 注意:要定义一个字符串为Unicode,只需前缀分配'u'左引号.以下是示例. 语法 以下是isdecimal()方法的语法: ? 1 str.isdecimal() 参数 NA 返回值 如果字符串中的所有字符为十进制此方法返回true,否则返回false. 例子

Python操作列表之List.insert()方法的使用

  这篇文章主要介绍了Python操作列表之List.insert()方法的使用,是Python入门中的基础知识,需要的朋友可以参考下 insert()方法插入对象obj到列表的偏移量索引. 语法 以下是insert()方法的语法: ? 1 list.insert(index, obj) 参数 index -- 这是要插入对象obj必要的索引 obj -- 这是将被插入到给定的列表中的对象 返回值 此方法不返回任何值,但它插入指定的索引处的指定元素 例子 下面的例子显示了insert()方法的使

Python使用minidom读写xml的方法

  本文实例讲述了Python使用minidom读写xml的方法.分享给大家供大家参考.具体分析如下: 一 python提供的xml支持 2种工业标准的xml解析方法-SAX和DOM.SAX(simple API for XML),是基于事件处理的,当XML文档顺序地读入时,每次遇到一个元素会触发相应的事件处理函数来处理.DOM(Document Object Model),通过构建一个树结构来表现整个xml文档,一旦树被构建,可以通过DOM提供了接口来遍历树和提取相应的数据. python还提