我正在尝试从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中得到这个的确切方法。
看起来有些不对劲,我正试图获得Jan 12 2017
毫秒,但我的程序会返回此值:1484179200000
。如果我使用this online utility将这些毫秒转换为某个日期,则会显示Jan 11 2017
而不是Jan 12 2017
。
注意:我只能使用Python 2.7版本。 :(
答案 0 :(得分:1)
首先,我相信你的问题中的一点澄清就是表明你正在寻找从纪元到你提供的日期已经过去的毫秒,因为这就是工具似乎正在做的事情。
这样做的简单方法就是这样:
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
。
答案 1 :(得分:0)