python时间处理

在处理数据和进行机器学习的时候,遇到了大量需要处理的时间序列。比如说:数据库读取的str和time的转化,还有time的差值计算。总结一下python的时间处理方面的内容。

一、字符串和时间序列的转化

  • time.strptime():字符串=>时间序列
  • time.strftime():时间序列=>字符串
import time
start = "2017-01-01"
end = "2017-8-12"

startTime = time.strptime(start,"%Y-%m-%d")
endTime = time.strptime(end,"%Y-%m-%d") #第二个参数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) #参数位置刚好相反
print(_start)
print(_end)

二、时间戳

  • time.mktime(t):将t转化为时间戳
  • time.localtime(s):将时间戳转化为时间
startStamp = time.mktime(startTime) #time => 时间戳
endStamp = time.mktime(endTime)
print(startStamp)
print(endStamp)

_startTime = time.localtime(startStamp) # 时间戳 => time 
print(_startTime)

三、日期运算

注意:时间戳是从1970年开始,以秒数为单位,所以我们的计算可以根据秒数来实现

例如,我这里计算 startTime 和 endTime之间相差的天数:

print (int((endStamp-startStamp)/(24*60*60)))

四、格式汇总

%a 英文星期简写
%A 英文星期的完全
%b 英文月份的简写
%B 英文月份的完全
%c 显示本地日期时间
%d 日期,取1-31
%H 小时, 0-23
%I 小时, 0-12 
%m 月, 01 -12
%M 分钟,1-59
%j 年中当天的天数
%w 显示今天是星期几
%W 第几周
%x 当天日期
%X 本地的当天时间
%y 年份 00-99间
%Y 年份的完整拼写

欢迎进一步交流本博文相关内容:

博客园地址 : http://www.cnblogs.com/AsuraDong/

CSDN地址 : http://blog.csdn.net/asuradong

也可以致信进行交流 : xiaochiyijiu@163.com

欢迎关注个人微博:http://weibo.com/AsuraDong

欢迎转载 , 但请指明出处  :  )


posted @ 2017-08-13 23:11  AsuraDong  阅读(685)  评论(0编辑  收藏  举报