如何在python中计算时间浮点微秒?

如何在python中计算时间浮点微秒?,python,datetime,Python,Datetime,我要减去字符串键入时间 a = "2017-04-15 21:10:02.026" b = "2017-10-15 10:09:57.321" 我要a-b 请有人帮帮我谢谢你你需要先把它们转换成日期时间 from datetime import datetime a = "2017-04-15 21:10:02.026" b = "2017-10-15 10:09:57.321" dt_a = datetime.strptime(a, "%Y-%m-%d %H:%M:%S.%f") dt_

我要减去
字符串
键入时间

a = "2017-04-15 21:10:02.026"
b = "2017-10-15 10:09:57.321"
我要
a-b


请有人帮帮我谢谢你你需要先把它们转换成日期时间

from datetime import datetime

a = "2017-04-15 21:10:02.026"
b = "2017-10-15 10:09:57.321"

dt_a = datetime.strptime(a, "%Y-%m-%d %H:%M:%S.%f")
dt_b = datetime.strptime(b, "%Y-%m-%d %H:%M:%S.%f")

print dt_a - dt_b
这将显示:

-183 days, 11:00:04.705000
用于通过指定字符串的格式将字符串转换为
datetime
。每个
%
告诉它日期/时间的每个部分在哪里

在您的情况下,所需的格式如下:

%Y
-以世纪为十进制数的年份。
%m
-以零填充十进制数字表示的月份。
%d
-以零填充十进制数表示的月份日期。
%H
-小时(24小时时钟)作为零填充十进制数。
%M
-分钟作为零填充十进制数。
%S
-以零填充十进制数表示的秒数。
%f
-十进制数为微秒,左侧填充零

减去两个
datetime
对象将返回一个对象。有了这个,你可以确定你的目标。e、 g

根据,您可以这样做(请参阅链接文档中带有
%
的所有选项:

>>> from datetime import datetime
>>> a = "2017-04-15 21:10:02.026"
>>> b = "2017-10-15 10:09:57.321"
>>> oA = datetime.strptime(a,"%Y-%m-%d %H:%M:%S.%f")
>>> oB = datetime.strptime(b,"%Y-%m-%d %H:%M:%S.%f")
>>> oA - oB
>>> datetime.timedelta(-183, 39604, 705000)

根据
timedelta
应返回
(天、秒、毫秒)
以这种方式使用
datetime
,如下所示:

import datetime


if __name__ == "__main__":
    a = "2017-04-15 21:10:02.026"
    b = "2017-10-15 10:09:57.321"
    a_time = datetime.datetime.strptime(a, "%Y-%m-%d %H:%M:%S.%f")
    b_time = datetime.datetime.strptime(b, "%Y-%m-%d %H:%M:%S.%f")
    print (b_time - a_time).total_seconds()
b_-time-a_-time
创建一个具有多个属性的
timedelta
对象;
total_-seconds
返回以秒为单位的时差。

使用该模块。具体来说,请查看
strtime
首先创建
datetime
对象。
import datetime


if __name__ == "__main__":
    a = "2017-04-15 21:10:02.026"
    b = "2017-10-15 10:09:57.321"
    a_time = datetime.datetime.strptime(a, "%Y-%m-%d %H:%M:%S.%f")
    b_time = datetime.datetime.strptime(b, "%Y-%m-%d %H:%M:%S.%f")
    print (b_time - a_time).total_seconds()