動態

詳情 返回 返回

使用pydantic 處理各種各樣亂七八糟的時間格式字符串,尤其是 iso8601 - 動態 詳情

這個教程是叫你怎麼優雅的處理各種亂七八糟的日期字符串

按照 iso8601,下面的格式都是合法的

  • 2023-08-15T12:34:56Z
  • 2023-08-15 12:34:56+00:00
  • 2023-08-15 12:34:56

如果你要自己寫 re 去處理這種 T、+ 、Z 這些區別,就會很麻煩很麻煩

怎麼優雅的處理?用 pydantic 就行,pydantic 已經把這種亂七八糟的問題都考慮進去了

只有導入 from pydantic.v1.datetime_parse import parse_datetime 就行了

from pydantic.v1.datetime_parse import parse_datetime

# 給我一堆 parse_datetime 的示例
dt_strs = [
    '2023-08-15T12:34:56Z',
    '2023-08-15 12:34:56+00:00',
    '2023-08-15 12:34:56',
]

for dt_str in dt_strs:
    dt = parse_datetime(dt_str)
    print(dt)

如果你的 pydantic 是 1.x 版本,就用 from pydantic.datetime_parse import parse_datetime

如果你的 pydantic 是 2.x 版本,就用 from pydantic.v1.datetime_parse import parse_datetime

user avatar vanve 頭像 oeasy 頭像 wnhyang 頭像 jianghushinian 頭像 aitigou 頭像 soujer 頭像 nogeek 頭像 kalii 頭像 wuyujingcha 頭像 fengliudeshanghen 頭像 dosswy 頭像 biocrosscoder 頭像
點贊 16 用戶, 點贊了這篇動態!
點贊

Add a new 評論

Some HTML is okay.