python日期與字串互相轉換,終於搞得領清了__python

來源:互聯網
上載者:User

python日期,字元互換


日期轉字串


1. 從Excel中讀入資料,在excel中日期這一列資料格式類型是“短日期”

test = pd.read_excel('f:/test.xlsx')

test.head(2)


2. 查看讀入資料的資料類型

test['日期'].apply(lambda x: type(x))

資料類型是時間戳記,就可以通過year,month,day屬性擷取時間戳記所指代的年月日資訊。


輸出時間戳記對應的年月日資訊

test['日期'].apply(lambda x: print(x.year, x.month, x.day)),輸出的結果如下所示:


4. 將時間戳記轉換為字串,查看資料類型

myString = test['日期'].apply(lambda x: x.strftime('%Y-%m-%d'))

myString.apply(lambda x: type(x))

輸出結果如下,已經全部轉變為str類型


字串轉日期


1. 使用的範例資料是長這樣的

myString.apply(lambda x: print(x, type(x)))


2. 字串到日期的變性操作

myString.apply(lambda x: type(time.strptime(x, '%Y-%m-%d')))

這個變性醫生就是time的strptime內建函數,重要的事情說三遍


字串轉日期,就用time.striptime(),傳回值類型是時間元組struct_time

字串轉日期,就用time.striptime(),傳回值類型是時間元組struct_time

字串轉日期,就用time.striptime(),傳回值類型是時間元組struct_time


如果你在網上檢索“字串轉日期”的話,一般就會告訴你這些。使用time.striptime(),但是並沒有繼續分析返回的結果是什麼類型,該怎麼提取日期的年份、月份、日等資訊。


之所以叫變性操作,是因為此步操作之後,已經實現了字串到日期的本質改變。不過可能呈現的形式,如下圖所示,並不是你最終想要的,接下來我們還要對其變形操作。


3. 日期元組的變形記

將時間元組轉為時間戳記

myString.apply(lambda x: time.mktime(time.strptime(x, '%Y-%m-%d')))


傳回值是float類型的,依舊不是我們想要的形式,繼續變形。

myString.apply(lambda x: datetime.datetime.fromtimestamp(time.mktime(time.strptime(x, '%Y-%m-%d'))))

使用datetime.datetime.fromtimestamp()進行變形,參數是時間戳記類型。


看到結果已經大功告成了,是我們想要的形式。這時候,又可以歡快的使用year,month,day屬性啦。

myString.apply(lambda x: datetime.datetime.fromtimestamp(time.mktime(time.strptime(x, '%Y-%m-%d'))).year)


字串直接提取年/月/日


如果我們的目的,只是想要提取其中的年月日資訊,字串完全難不倒機靈的分析師。什麼樣的客人,什麼樣的待。見招拆招,舉一反三才是人的核心競爭力。用個split分割一下就搞定。


myString.apply(lambda x: x.split('-'))


見識“日曆”


calendar模組的函數都是日曆相關的,例如列印某月的字元月曆。


import calendar

cal = calendar.month(2017, 9)

print(cal)


轉眼這個月就到月底了,就要放假了。學習要乘早,成長每天必不可少~


記得長按下方圖片,識別圖中二維碼,關注“資料分析師手記”,跟三月桑一起進步^_^


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.