本文实例讲述了python正常时间和unix时间戳相互转换的方法。分享给大家供大家参考。具体分析如下:
这段代码可以用来转换常规时间格式为unix时间戳,也可以将unix时间戳转换回来,
例如:1332888820 格式转换成 2012-03-28 06:53:40的形式
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# -*- coding: utf-8 -*- import time def timestamp_datetime(value): format = '%Y-%m-%d %H:%M:%S' # value为传入的值为时间戳(整形),如:1332888820 value = time.localtime(value) ## 经过localtime转换后变成 ## time.struct_time(tm_year=2012, tm_mon=3, tm_mday=28, tm_hour=6, tm_min=53, tm_sec=40, tm_wday=2, tm_yday=88, tm_isdst=0) # 最后再经过strftime函数转换为正常日期格式。 dt = time.strftime( format , value) return dt def datetime_timestamp(dt): #dt为字符串 #中间过程,一般都需要将字符串转化为时间数组 time.strptime(dt, '%Y-%m-%d %H:%M:%S' ) ## time.struct_time(tm_year=2012, tm_mon=3, tm_mday=28, tm_hour=6, tm_min=53, tm_sec=40, tm_wday=2, tm_yday=88, tm_isdst=-1) #将"2012-03-28 06:53:40"转化为时间戳 s = time.mktime(time.strptime(dt, '%Y-%m-%d %H:%M:%S' )) return int (s) if __name__ = = '__main__' : d = datetime_timestamp( '2012-03-28 06:53:40' ) print d s = timestamp_datetime( 1332888820 ) print s |
希望本文所述对大家的Python程序设计有所帮助。