如何利用Python实现日期转换格式?

时间:2022-05-26 04:51:56

如何利用Python实现日期转换格式?

大家好,我是Python进阶者。

前言

前几天有个粉丝在Python交流群里问了一道关于日期转换的问题,如何利用Python实现'2021年9月28日'转换位为'2021/9/28'格式?。

一、思路

这个问题看似简单,实际上并没有想的那么轻松。我首先想到的是使用date或者datetime模块去进行处理,可是却发现并不顺心应手。可能有的小伙伴就挑刺了,我直接手动修改年月日不就可以了么?为啥偏偏要祭出Python来处理呢?诚然,一个日期,你完全可以这么干,但是面对Excel文件里边成千上万个日期,挨个进行处理就难受了,所以用Python来处理还是很奈斯的。下面一起来看看吧!

二、解决方法

1)方法一

这个方法就是硬碰硬,直接来个替换处理操作,将年月日进行替换,一步到位,代码如下:

  1. #coding:utf-8
  2. date1='2021年9月28日'
  3. #方法一
  4. date2=date1.replace("年","/").replace("月","/").replace("日","")
  5. print(date2)

如何利用Python实现日期转换格式?

2)方法二

这个方法和第一个方法有点类似,先是对原始数据进行切割,之后再进行拼接,也可以完成这个需求,代码如下:

  1. #方法二
  2. #coding:utf-8
  3. date1='2021年9月28日'
  4. year=date1.split("年")[0]
  5. month=date1.split("年")[1].split("月")[0]
  6. day=date1.split("年")[1].split("月")[1].split("日")[0]
  7. print(year,month,day)
  8. date2="/".join([year,month,day])
  9. print(date2)

如何利用Python实现日期转换格式?

3)方法三

该方法使用datetime模块,方法不可谓不妙,有点难理解,代码如下:

  1. #方法三
  2. #coding:utf-8
  3. importdatetime
  4. date1='2021年9月28日'
  5. b=datetime.datetime.strptime('2021年9月28日','%Y年%m月%d日')
  6. date2=b.strftime('%Y{}%m{}%d'.format('/','/'))
  7. print(date2)

如何利用Python实现日期转换格式?

三、总结

我是Python进阶者。本文基于粉丝提问如何将'2021年9月28日'格式转换位为'2021/9/28'格式的问题,整合了大家给出的三种解决方案。

原文链接:https://mp.weixin.qq.com/s/a_J24cwd8X-NZTZ-bJiO3Q