时间与时间戳
转自 zhiyong_will 的总结: https://blog.csdn.net/google19890102/article/details/51355282
%Y: 年 %m: 月 %d: 天 %H: 小时 %M:分钟 %S:秒
1. 将时间变为时间戳 如: 2019-04-20 23:59:59 -> 1556553599000
- 利用
strptime()函数将时间转换成时间数组 - 利用
mktime()函数将时间数组转换成时间戳
import time dt = "2019-04-20 23:59:59" #转换成时间数组 timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S") #转换成时间戳 timestamp = time.mktime(timeArray) print timestamp
2. 重新格式化时间, 如 2019-04-20 23:59:59 -> 20190420-23:59:59, 变为另一种显示样式
- 利用
strptime()函数将时间转换成时间数组 - 利用
strftime()函数重新格式化时间
import time dt = "2019-04-20 23:59:59" #转换成时间数组 timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S") #转换成新的时间格式(20190420-23:59:59) dt_new = time.strftime("%Y%m%d-%H:%M:%S",timeArray) print dt_new
3. 时间戳转化为时间 , 如 1556553599000 -> 2019-04-20 23:59:59
- 利用
localtime()函数将时间戳转化成localtime的格式 - 利用
strftime()函数重新格式化时间
import time timestamp = 1556553599000 #转换成localtime, 这个函数默认处理的是10位时间戳,但是经常用到的是13位,因此将时间戳整除1000转换成秒级别来处理 time_local = time.localtime(timestamp//1000) #转换成新的时间格式(2019-04-20 23:59:59) dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local) print dt
4. 按指定格式获取当前时间
- 利用
time()获取当前时间 - 再利用
localtime()函数转换为localtime - 最后利用
strftime()函数重新格式化时间。
import time # 获取当前时间,获取到当前时间戳(是10位!!!)的 # 如果想要获取13位, int(round(time.time()*1000)) time_now = int(time.time()) #转换成localtime time_local = time.localtime(time_now) #转换成新的时间格式(2016-05-09 18:59:20), 这里随便想转换什么格式 dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local)
5. 获取昨天、今天、明天开始、结束时间戳 https://blog.csdn.net/qq_26656329/article/details/73658250
import time import datetime # 今天日期 today = datetime.date.today() # 昨天时间 yesterday = today - datetime.timedelta(days=1) # 明天时间 tomorrow = today + datetime.timedelta(days=1) acquire = today + datetime.timedelta(days=2) # 昨天开始时间戳 yesterday_start_time = int(time.mktime(time.strptime(str(yesterday), '%Y-%m-%d'))) # 昨天结束时间戳 yesterday_end_time = int(time.mktime(time.strptime(str(today), '%Y-%m-%d'))) - 1 # 今天开始时间戳 today_start_time = yesterday_end_time + 1 # 今天结束时间戳 today_end_time = int(time.mktime(time.strptime(str(tomorrow), '%Y-%m-%d'))) - 1 # 明天开始时间戳 tomorrow_start_time = int(time.mktime(time.strptime(str(tomorrow), '%Y-%m-%d'))) # 明天结束时间戳 tomorrow_end_time = int(time.mktime(time.strptime(str(acquire), '%Y-%m-%d'))) - 1
猪猪侠要努力呀!
浙公网安备 33010602011771号