如何用python将中文日期转换为数字日期 | 答疑

↑ 关注 + 星标 ~ 有趣的不像个技术号

每晚九点,我们准时相约  

大家好,这篇文章是在交流群的群友解疑过程中诞生的。

没想到黄同学在帮助群友后还记录了下来,所以就把这篇文章发出来。

我也会尽量把大家群里交流的优质内容整理分享出来的。

在此,非常感谢交流群中大家的友善互助。

问题

他有一个需求,就是对于日期的录入都是中文形式的,需要转换为数字形式的。

由于python库中没有函数直接进行转换,因此我写了本篇文章。

测试源数据

代码如下

df = pd.read_excel(r"C:\Users\黄伟\Desktop\chinese_english.xlsx")
display(df)

def func(x):
    year = x.split("年")[0]
    month = x.split("年")[1].split("月")[0]
    day = x.split("年")[1].split("月")[1].split("日")[0]
    if len(day) >= 3:
        day = day[0] + day[2]
    chinese_english = dict(零=0,一=1,二=2,三=3,四=4,五=5,六=6,七=7,八=8,九=9,十=10)
    year = "".join(str(chinese_english[i]) for i in year)
    month = "".join(str(chinese_english[i]) for i in month)
    day = "".join(str(chinese_english[i]) for i in day)
    if len(month) == 3:
        month = month[0] + month[2]
    if len(day) == 3:
        day = day[0] + day[2]
    final_date = year + "." + month + "." + day
    return final_date

df["final_date"] = df["日期"].apply(func)
display(df)

结果如下:

后台回复关键词「进群」,即刻加入读者交流群~

平时对于文章中的问题,可以留言或者后台回复“进群”,加入交流群后,群友之间会相互帮助解答。

朱小五

发布了41 篇原创文章 · 获赞 370 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/zhuxiao5/article/details/104765793
今日推荐