如何将GMT时间转换为EPOCH时间戳以毫秒为单位?

问题描述:

我想将GMT区(日期和时间)更改为以毫秒为单位的EPOCH时间戳。如何将GMT时间转换为EPOCH时间戳以毫秒为单位?

例如:

我想利用当前系统日期和默认的时间将是“16:00:00”,并将此类日期像下面&时间:

如果日期&时间是“2015年12月15日16点00分零零秒” GMT转换为“1450195200000”

这里第i用来实现代码,但没有解决方案:

import datetime 
dt = time.strftime("%d/%m/%Y ") 
ti = "16:00:00" 
dt_ti = dt + ti 
pattern = '%d/%m/%Y %H:%M:%S' 
epoch = int(time.mktime(time.strptime(dt_ti, pattern))) 
print (epoch) 

输出为1450175400

,但我想实现的是这个1450195200000

请帮我在这。

time.mktime假设你喂它的time_struct是当地时间。 calendar.timegm()做了类似的事情,但假设你给它一个UTC time_struct。

import datetime 
import calendar 
dt = time.strftime("15/12/2015 ") 
ti = "16:00:00" 
dt_ti = dt + ti 
pattern = '%d/%m/%Y %H:%M:%S' 

epoch = int(time.mktime(time.strptime(dt_ti, pattern))) 
print (epoch) 
# 1450224000 

utc_epoch = int(calendar.timegm(time.strptime(dt_ti, pattern))) 
print (utc_epoch) 
# 1450195200 
+0

嗨@personjerry谢谢,代码工作正常,但我有一个小的要求。我想打印像'1450195200000'这样的值。因为我要在程序中执行大于和小于操作。如果值是'1450195200'。我面临的问题有没有什么办法可以像'1450195200000'那样获得价值。 –

+0

好像你可以乘以1000? – personjerry