对年份整理 | python

 

import datetime
def year2dig(year):
    """
    将年份转换成阿拉伯数字年
    :param year:
    :return:
    """

    chnum_digit = {
        '零': 0, '一': 1, '二': 2, '两': 2, '三': 3, '四': 4,
        '五': 5, '六': 6, '七': 7, '八': 8, '九': 9,
        '0': 0, '1': 1, '2': 2, '3': 3, '4': 4,
        '5': 5, '6': 6, '7': 7, '8': 8, '9': 9
    }

    res = ''
    for item in year:
        if item in chnum_digit.keys():
            res = res + str(chnum_digit[item])
        else:
            res = res + item
    m = re.match(r"\d+", res)
    if m:
        if len(m.group()) == 2:  # 只输入年两个尾数
            return int(datetime.datetime.today().year // 100) * 100 + int(m.group())
        else:
            return int(m.group())
    else:
        return None

调用如下:

pprint( year2dig("23") )
# 输出 2023

pprint( year2dig("2021") )
# 输出 2021

 

posted @ 2022-04-21 09:19  谦曰盛  阅读(46)  评论(0编辑  收藏  举报