如何利用Python實(shí)現(xiàn)日期轉(zhuǎn)換格式?
大家好,我是Python進(jìn)階者。
前言
前幾天有個(gè)粉絲在Python交流群里問了一道關(guān)于日期轉(zhuǎn)換的問題,如何利用Python實(shí)現(xiàn)'2021年9月28日'轉(zhuǎn)換位為'2021/9/28'格式?。
一、思路
這個(gè)問題看似簡單,實(shí)際上并沒有想的那么輕松。我首先想到的是使用date或者datetime模塊去進(jìn)行處理,可是卻發(fā)現(xiàn)并不順心應(yīng)手??赡苡械男』锇榫吞舸塘?,我直接手動修改年月日不就可以了么?為啥偏偏要祭出Python來處理呢?誠然,一個(gè)日期,你完全可以這么干,但是面對Excel文件里邊成千上萬個(gè)日期,挨個(gè)進(jìn)行處理就難受了,所以用Python來處理還是很奈斯的。下面一起來看看吧!
二、解決方法
1)方法一
這個(gè)方法就是硬碰硬,直接來個(gè)替換處理操作,將年月日進(jìn)行替換,一步到位,代碼如下:
- # coding: utf-8
- date1 = '2021年9月28日'
- # 方法一
- date2 = date1.replace("年", "/").replace("月", "/").replace("日", "")
- print(date2)
2)方法二
這個(gè)方法和第一個(gè)方法有點(diǎn)類似,先是對原始數(shù)據(jù)進(jìn)行切割,之后再進(jìn)行拼接,也可以完成這個(gè)需求,代碼如下:
- # 方法二
- # coding: utf-8
- date1 = '2021年9月28日'
- year = date1.split("年")[0]
- month = date1.split("年")[1].split("月")[0]
- day = date1.split("年")[1].split("月")[1].split("日")[0]
- print(year, month, day)
- date2 = "/".join([year, month, day])
- print(date2)
3)方法三
該方法使用datetime模塊,方法不可謂不妙,有點(diǎn)難理解,代碼如下:
- # 方法三
- # coding: utf-8
- import datetime
- date1 = '2021年9月28日'
- b = datetime.datetime.strptime('2021年9月28日', '%Y年%m月%d日')
- date2 = b.strftime('%Y{}%m{}%d'.format('/', '/'))
- print(date2)
三、總結(jié)
我是Python進(jìn)階者。本文基于粉絲提問如何將'2021年9月28日'格式轉(zhuǎn)換位為'2021/9/28'格式的問題,整合了大家給出的三種解決方案。