雇员号由年,月和3位数的控制数字组成,如果我们基于今天的日期,如何知道他们的工作年数?员工1 201011003,员工2 200605015
您可以使用datetime.strptime
将日期字符串读入datetime
对象。通过减去两个datetime
对象,您将获得一个timedelta
对象,您可以使用该对象来计算员工到那里的年限。
from datetime import datetime
def get_date(s):
return datetime.strptime(s[:6], '%Y%m')
示例
>>> get_date('201011003')
datetime.datetime(2010, 11, 1, 0, 0)
>>> get_date('200605015')
datetime.datetime(2006, 5, 1, 0, 0)
根据您想要的精度,您可以大致估算出员工去过的年数
def get_years(s):
start = datetime.strptime(s[:6], '%Y%m')
now = datetime.now()
return (now - start).days / 365.25
>>> get_years('201011003')
9.527720739219713
>>> get_years('200605015')
14.03148528405202