python datatime簡單計算工齡

最近要做一些簡單的工資結算工作,裏面有一項需要根據入職時間和截止時間計算工齡,根據工齡規則計算對應的工齡工資,所以自己寫了一個計算工齡的函數,現推薦給大家(通過datetime包實現):

格式如下:

代碼如下:

import datetime


def work_age(t1, t2):
    """
    計算工齡
    :param t1: 參加工作時間
    :param t2:截至計算時間
    :return:
    """
    # 首先判斷是不是時間格式
    if not isinstance(t1, datetime.datetime):
        t1 = datetime.datetime.strptime(t1, "%Y-%m-%d")
    if not isinstance(t2, datetime.datetime):
        t2 = datetime.datetime.strptime(t2, "%Y-%m-%d")
    year1 = t1.year
    year2 = t2.year
    month1 = t1.month
    month2 = t2.month
    # 工齡保留兩位小數
    num = round(year2 - year1 + (month2 - month1) / 12, 2)
    return num


if __name__ == '__main__':
    print(work_age("1982-09-01", "2020-03-01"))  # 37.5
    print(work_age("1982-10-01", "2020-03-01"))  # 37.42

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章