日期字串轉為時間戳int
一、背景
有時需要將日期字串:2016-05-05 20:28:54
轉為時間戳:1462451334。
二、分析
采用python,編寫轉換函數:date2time('2016-05-05 20:28:54')
返回時間戳:1462451334。
三、封裝好的函數方法
import time
# 日期字符串 => 時間戳int。只精確到秒。
def date2time(date_str='2016-05-05 20:28:54', format='%Y-%m-%d %H:%M:%S'):
'''
日期字符串 轉為 時間戳。精確到s,單位秒。
輸入舉例說明:
('2016-05-05 20:28:54')
('2016-05-05 20:28:54','%Y-%m-%d %H:%M:%S')
('20160505 20:28:54','%Y%m%d %H:%M:%S')
('20160505 20_28_54','%Y%m%d %H_%M_%S')
('20160505','%Y%m%d')
:param date_str:日期字符串
:param format:輸入日期字串的日期格式、樣式
:return:轉換為int的時間戳。
'''
# 將時間字符串轉為時間戳int
dt = date_str
# 轉換成時間數組
timeArray = time.strptime(dt, format)
# 轉換成時間戳
timestamp = int(time.mktime(timeArray))
return timestamp
if __name__ == '__main__':
date_str1 = '2016-05-05 20:28:54'
format1 = '%Y-%m-%d %H:%M:%S'
t1 = date2time(date_str1, format1)
print(t1)
date_str2 = '20160505'
format2 = '%Y%m%d'
t2 = date2time(date_str2, format2)
print(t2)
輸出:
1462451334
1462377600
