Python时间-日期-时间戳之间转换

1、将字符串的时间转换为时间戳

import time
# 定义变量
a = "2013-10-10 23:40:00"
# 将其转换为时间数组
timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
# 转换为时间戳
timeStamp = int(time.mktime(timeArray))
print(timeStamp) # timeStamp == 1381419600

2、时间戳转换为指定格式日期

# 方法一: 利用localtime()转换为时间数组,然后格式化为需要的格式,如
timeStamp = 1381419600
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
otherStyletime == "2013-10-10 23:40:00"
# 方法二
import datetime
timeStamp = 1381419600
dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
otherStyletime == "2013-10-10 23:40:00"

3、获取当前时间并转换为指定日期格式

# 方法一:
import time
# 获得当前时间时间戳
now = int(time.time())  ->这是时间戳
# 转换为其他日期格式,如:"%Y-%m-%d %H:%M:%S"
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
# 方法二:
import datetime
# 获得当前时间
now = datetime.datetime.now()  ->这是时间数组格式
# 转换为指定的格式:
otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")

4、获得三天前的时间

# 方法:
import time
import datetime
# 先获得时间数组格式的日期
threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 3))
# 转换为时间戳:
timeStamp = int(time.mktime(threeDayAgo.timetuple()))
# 转换为其他字符串格式:
otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")
# 注:timedelta()的参数有:days,hours,seconds,microseconds