从奇数Dd HH:MM:SS.mm格式中提取时间数据[关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从奇数Dd HH:MM:SS.mm格式中提取时间数据[关闭]相关的知识,希望对你有一定的参考价值。

我试图根据python形式导入实际时间数据,这些数据实际上不是时间,日期或日期时间。它是Dd HH:MM:SS.m的时间格式,其中第一个时间点是0d 00:00:00.00,26小时后的点将是1d 02:00:00.00。

有没有办法使用datetime模块提取适当的时间信息,而无需对当天的字符串搜索进行硬编码,并在小时计数器中添加24的倍数?

答案

要将“奇怪”格式转换为datetime.timedelta对象,请尝试:

from datetime import timedelta
import re

input = '1d 02:00:00.00'


def to_timedelta(input):
    reg = re.search('([0-9])+d ([0-9]){2}:([0-9]){2}:([0-9]){2}.([0-9]){2}', input)
    ints = tuple(int(t) for t in reg.groups())
    return timedelta(days=ints[0],
                     hours=ints[1],
                     minutes=ints[2],
                     seconds=ints[3],
                     milliseconds=ints[4])

td = to_timedelta(input)
print(td)

以上是关于从奇数Dd HH:MM:SS.mm格式中提取时间数据[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

通过 Javascript 将 DOMTimeStamp 转换为本地化的 HH:MM:SS MM-DD-YY

如何将 DDMMMYYYY HH:mm:ss:ssssss 格式的时间戳更改为 spark sql 中的 yyyy-MM-dd 格式 [重复]

SQL 日期转换 HHMMSS.CCCNNNNNN 到 yyyy-mm-dd hh:mi:ss.mmm

时间处理+年龄计算

my97时间控件如何去掉时分秒

我需要一个正则表达式来验证时间格式 HH:MM:SS:mm [重复]