python - 这个 datetime.strptime 函数的正确代码格式是什么?
问题描述
我有一个摄取和处理数据的 python 程序,但一个字段没有正确转换。一条数据以java.time.OffsetDateTime.now(ZoneOffset.UTC)字符串的形式出现,我们使用 strptime 创建一个日期时间对象。这是简化的代码:
$ python
from datetime import datetime
# source string format: (java.time.OffsetDateTime.now(ZoneOffset.UTC))
date_string = "2021-06-28T19:47:27.510670082Z"
# this works yet is not in the source format
date_string = "2021-06-28T19:47:27.510670"
datetime_object = datetime.strptime(date_string, '%Y-%m-%dT%H:%M:%S.%f')
print (datetime_object)
导致此错误
ValueError: unconverted data remains: 082Z
创建日期时间对象的正确格式代码是什么?
解决方案
只需使用dateutil
. 您有时间以 ISO 8601 格式设置时区
from dateutil import parser
# source string format: (java.time.OffsetDateTime.now(ZoneOffset.UTC))
date_string = "2021-06-28T19:47:27.510670082Z"
datetime_object = parser.parse(date_string)
print(datetime_object) # 2021-06-28 19:47:27.510670+00:00
推荐阅读
- python - 使用 Python 从字符串中提取值
- typescript - 在观察者运行之前将 DOM.element 分配给模块变量
- sql - Restore Backups automatically using SQL Server
- angular - 类构造函数中未定义数组 obj 属性
- c# - 如何停止 Azure 广告身份验证注销询问您要注销哪个帐户?
- python-3.x - 使用真实进度条跟踪函数执行
- cognos - Concur / Cognos Report Studio:始终使用 timepropmt 值过滤时间范围选项?
- xml - 使用 Powershell 进行 XML 解析
- c# - 使用 C# 的非 WPF 或 Win32 应用程序的 UI 自动化
- javascript - javascript中require()函数的问题