【发布时间】:2026-01-08 01:05:01
【问题描述】:
我的数据集中有一个不寻常的日期时间格式,我需要将其转换为可用的日期时间对象。
示例如下:'1/3/2018 1:29:35 PM(UTC+0)'
我尝试用以下方式解析它:
from dateutil.parser import parse
parse('1/3/2018 1:29:35 PM(UTC+0)')
但它无法识别格式。
我目前的解决方法是使用正则表达式将 datetime 列(数据在 pandas 数据框中)解析为两列,如下所示:
然后根据 'utc' 列的值应用自定义 convert_to_eastern 函数。
我想知道是否有更简单的方法可以使用 datetime.datetime.strptime() 完成它?
以下操作无效:
import datetime as dt
my_time='1/3/2018 1:29:35 PM(UTC+0)'
dt.datetime.strptime(my_time, '%m/%d/%Y %I:%M:%S %p(%z)')
补充: 这不是一个问题:“如何将 UTC 时区转换为本地时区” 我的数据集包含 UTC 行和东部时区行。我遇到的问题是该格式不是 ISO 格式,而是一些人类可读的自定义格式。
【问题讨论】:
-
我认为您的方法是通过将
1/3/2018 1:29:35 PM(UTC+0)转换为1/3/2018 1:29:35 PM+0格式然后使用 dateutil.parser 来编写。但是使用 panda 数据框架可能会减慢您的转换过程
标签: python timezone datetime-format