我正在尝试在Python中打印从日期开始的毫秒数,我使用下面的代码来获取毫秒,因为我是Python新手,我想与这里的人确认这是否是获取毫秒的正确方法:
import datetime
def findmili(date):
return int(date.strftime("%s")) * 1000
x = datetime.datetime.strptime('01/27/2017', "%m/%d/%Y")
print findmili(x)
有人可以帮我验证一下吗,如果这不是正确的获取方式,你能告诉我在 python 中获取它的确切方式是什么吗?
看起来有问题,我试图获取 2017 年 1 月 12 日
的毫秒数,但我的程序返回此值:1484179200000
。如果我使用 this online utility 将这些毫秒转换为日期,它显示 Jan 11 2017
而不是 Jan 12 2017
。
注意:我只能使用Python 2.7版本。 :(
最佳答案
首先,我相信您问题中的一些澄清是表明您正在寻找从纪元到您提供的日期所经过的毫秒数,因为这就是该工具似乎正在做的事情。
做类似事情的简单方法如下:
int(datetime.datetime.now().strftime("%s")) * 1000
替换datetime.datetime.now()
使用您自己的日期时间对象。所以完成的功能可能是这样的:
import datetime
def findmili(date):
return int(date.strftime("%s")) * 1000
x = datetime.datetime.strptime('10Nov2017', '%d%b%Y')
print findmili(x)
顺便说一句,您的代码实际上不会在 python2.7 中运行。这是因为,您在第 6 行中犯了错误,而不是 d = datetime.strptime(myDate, "%m/%d/%Y")
,实际上应该是d = datetime.datetime.strptime(myDate, "%m/%d/%Y")
另外,您的代码也是正确的(除了上面的错误)。它回来了1484150400000
返回为 Thu Jan 12 2017 00:00:00 GMT+0800
.
关于python - 从日期获取毫秒数,但显示比实际少一天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47117769/