在處理數(shù)據(jù)和進(jìn)行機(jī)器學(xué)習(xí)的時(shí)候,遇到了大量需要處理的時(shí)間序列。比如說:數(shù)據(jù)庫讀取的str和time的轉(zhuǎn)化,還有time的差值計(jì)算??偨Y(jié)一下python的時(shí)間處理方面的內(nèi)容。
一、字符串和時(shí)間序列的轉(zhuǎn)化
time.strptime():字符串=>時(shí)間序列
time.strftime():時(shí)間序列=>字符串
import time start = "2017-01-01" end = "2017-8-12" startTime = time.strptime(start,"%Y-%m-%d") endTime = time.strptime(end,"%Y-%m-%d") #第二個(gè)參數(shù)format指定格式 print(startTime);print(endTime) _start = time.strftime('%Y%m%d-%H:%M:%S',startTime) _end = time.strftime('%Y%m%d-%H:%M:%S',endTime) #參數(shù)位置剛好相反 print(_start) print(_end)
二、時(shí)間戳
time.mktime(t):將t轉(zhuǎn)化為時(shí)間戳
time.localtime(s):將時(shí)間戳轉(zhuǎn)化為時(shí)間
startStamp = time.mktime(startTime) #time => 時(shí)間戳 endStamp = time.mktime(endTime) print(startStamp) print(endStamp) _startTime = time.localtime(startStamp) # 時(shí)間戳 => time print(_startTime)
三、日期運(yùn)算
注意:時(shí)間戳是從1970年開始,以秒數(shù)為單位,所以我們的計(jì)算可以根據(jù)秒數(shù)來實(shí)現(xiàn)
例如,我這里計(jì)算 startTime 和 endTime之間相差的天數(shù):
print (int((endStamp-startStamp)/(24*60*60)))
四、格式匯總
%a 英文星期簡寫 %A 英文星期的完全 %b 英文月份的簡寫 %B 英文月份的完全 %c 顯示本地日期時(shí)間 %d 日期,取1-31 %H 小時(shí), 0-23 %I 小時(shí), 0-12 %m 月, 01 -12 %M 分鐘,1-59 %j 年中當(dāng)天的天數(shù) %w 顯示今天是星期幾 %W 第幾周 %x 當(dāng)天日期 %X 本地的當(dāng)天時(shí)間 %y 年份 00-99間 %Y 年份的完整拼寫
以上這篇基于python時(shí)間處理方法(詳解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
