python—时间与时间戳之间的转换

时间:2021-07-03 05:45:52

python—时间与时间戳之间的转换

对于时间数据,如2016-05-05
20:28:54,有时需要与时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python中,转换时需要用到time模块,具体的操作有如下的几种:

python—时间与时间戳之间的转换

将时间转换为时间戳

重新格式化时间

时间戳转换为时间

获取当前时间及将其转换成时间戳

1、将时间转换成时间戳



将如上的时间2016-05-05 20:28:54转换成时间戳,具体的操作过程为:



利用strptime()函数将时间转换成时间数组

利用mktime()函数将时间数组转换成时间戳

#coding:UTF-8

import time



dt = "2016-05-05 20:28:54"



#转换成时间数组

timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S")

#转换成时间戳

timestamp = time.mktime(timeArray)



print timestamp



2、重新格式化时间



重新格式化时间需要以下的两个步骤:



利用strptime()函数将时间转换成时间数组

利用strftime()函数重新格式化时间

#coding:UTF-8

import time



dt = "2016-05-05 20:28:54"



#转换成时间数组

timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S")

#转换成新的时间格式(20160505-20:28:54)

dt_new = time.strftime("%Y%m%d-%H:%M:%S",timeArray)



print dt_new

3、将时间戳转换成时间



在时间戳转换成时间中,首先需要将时间戳转换成localtime,再转换成时间的具体格式:



利用localtime()函数将时间戳转化成localtime的格式

利用strftime()函数重新格式化时间

#coding:UTF-8

import time



timestamp = 1462451334



#转换成localtime

time_local = time.localtime(timestamp)

#转换成新的时间格式(2016-05-05 20:28:54)

dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local)



print dt



4、按指定的格式获取当前时间



利用time()获取当前时间,再利用localtime()函数转换为localtime,最后利用strftime()函数重新格式化时间。

#coding:UTF-8

import time



#获取当前时间

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)

数据分析师培训

print dt