Python如何将TimeSpan字符串转换为DateTime日

时间:2016-03-16 10:27:19

标签: python datetime

42.00:00:00

这是来自PowerShell的TimeSpan值。

我应该如何将上述字符串转换为Python DateTime?我实际上只需要字符串中的日期值。以下代码不适用于此:

strptime("42.00:00:00", "%d.%H:%M:%S")

我假设它是因为这一天超出了一天的范围。

1 个答案:

答案 0 :(得分:0)

如果您只需要日值,则可以在句点上拆分字符串,然后取第一个元素。

timespan = "42.00:00:00"
num_days = int(timespan.split(".", 1)[0])

您尝试进行的转换中的问题是PowerShell Timespan是一段时间,并不等同于DateTime对象,尽管它代表特定的日期和时间。相反,您希望将其转换为timedelta object,这也代表了一段时间。

因此,从此代码中,您可以使用以下内容创建该对象:

from datetime import timedelta
timedelta(days=num_days)