盘点一个`07Apr2022`格式日期转换的基础题目

简介: 盘点一个`07Apr2022`格式日期转换的基础题目

大家好,我是皮皮。


一、前言


前几天在Python星耀交流群有个叫【wangning】的粉丝问了一道Python日期转换的问题,这里拿出来给大家分享下,一起学习下。

image.png


二、解决过程


【瑜亮老师】解答

这里给出了一个比较笨拙的方法,但是确实行之有效,使用了字符串处理+字典处理的方法。

def change(d):
    month_dict={
         "Apr": "-04-",
        # 这里自己补全12个月
    }
    dd=d[5:]+month_dict.get(d1[2:5])+d1[:2]
    return dd
d1="07Apr2022"
d2=change(d1)
print(d2)

image.png

如果里面的英文大小写不统一,可以用title()函数处理一下即可。

def change(d):
    month_dict={
         "Apr": "-04-",
        # 这里自己补全12个月
    }
    dd=d[5:]+month_dict.get(d.title()[2:5])+d[:2]
    return dd
d1="07apr2022"
d2=change(d1)
print(d2)
d3="07APR2022"
d4=change(d3)
print(d4)

image.png

这个方法确实可行,不过确实有点复杂,下面来看看另外一个方法。

【wangning】解答

下面这个是【wangning】大佬自己找到的方法,使用了datatime库,完全解决问题。

import datetime
d1 = "07Apr2022"
d2 = datetime.datetime.strptime(d1,"%d%b%Y") #
print(d2)
d3 = "10APR2022"
d4 = datetime.datetime.strptime(d3,"%d%b%Y") #
print(d4)

image.png

真的很强大:

image.png

关于它的用法,这里还有文档:https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior

不得不承认,这个方法还是很6的,很智能!

image.png


三、总结


大家好,我是皮皮。这篇文章主要分享了一道Python处理日期的基础问题,针对该问题给出了具体的解析和代码演示,一共两个方法,帮助粉丝顺利解决了问题。相信肯定还有其他方法的,欢迎大家积极尝试,如果有好方法,记得也分享给我噢,我帮助分享到群里,大家一起学习交流!


日期处理库还是很强大的,基本上解决日常生活中的大部分日期问题,如果真的不会,使用字符串处理也是可行的,只不过稍微绕一些。


最后感谢【wangning】提问,感谢【瑜亮老师】和【wangning】大佬给出的具体解析和代码演示,感谢【dcpeng】等人参与学习交流。


小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。


------------------- End -------------------

相关文章
|
20天前
|
Java
如何将OffsetDateTime转换为字符串格式的日期
【10月更文挑战第30天】如何将OffsetDateTime转换为字符串格式的日期
53 0
|
2月前
|
人工智能 IDE 开发工具
任意输入的日期转成星期几
任意输入的日期转成星期几
|
2月前
|
人工智能 IDE 开发工具
任意输入的日期转成星期几
任意输入的日期转成星期几
|
5月前
|
分布式计算 DataWorks 大数据
MaxCompute产品使用问题之月和日是1位数的日期格式如何转化成标准日期值
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
6月前
解决全网90%以上的日期格式转换、日期序列等骚操作问题
解决全网90%以上的日期格式转换、日期序列等骚操作问题
解决全网90%以上的日期格式转换、日期序列等骚操作问题
python---将随机输入的时间格式字符串进行转换
python---将随机输入的时间格式字符串进行转换
|
5月前
|
C语言
C语言--生日日期输出--年月日,一行输出--之间没有间隔,若月份为个位,在前面添加0
C语言--生日日期输出--年月日,一行输出--之间没有间隔,若月份为个位,在前面添加0
|
6月前
|
Java
java将输入的字符串时间提前一天,再以字符串形式输出。输入时间格式为:yyyy-MM-dd
java将输入的字符串时间提前一天,再以字符串形式输出。输入时间格式为:yyyy-MM-dd
40 2
|
C语言
C语言每日一题 ----计算日期到天数转换(Day 2)
C语言每日一题 ----计算日期到天数转换(Day 2)
142 0
华为机试HJ73:计算日期到天数转换
华为机试HJ73:计算日期到天数转换