Home >Backend Development >Python Tutorial >python正常时间和unix时间戳相互转换的方法

python正常时间和unix时间戳相互转换的方法

WBOY
WBOYOriginal
2016-06-10 15:14:311251browse

本文实例讲述了python正常时间和unix时间戳相互转换的方法。分享给大家供大家参考。具体分析如下:

这段代码可以用来转换常规时间格式为unix时间戳,也可以将unix时间戳转换回来,
例如:1332888820 格式转换成 2012-03-28 06:53:40的形式

# -*- 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

PS:这里再为大家推荐一个本站Unix时间戳转换工具,附带了各种语言(Python/PHP/Java/MySQL等)Unix时间戳的操作方法:

Unix时间戳(timestamp)转换工具:http://tools.jb51.net/code/unixtime

希望本文所述对大家的Python程序设计有所帮助。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn