Stories

Detail Return Return

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

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

按照 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 Avatar oeasy Avatar wnhyang Avatar jianghushinian Avatar aitigou Avatar soujer Avatar nogeek Avatar kalii Avatar wuyujingcha Avatar fengliudeshanghen Avatar dosswy Avatar biocrosscoder Avatar
Favorites 16 users favorite the story!
Favorites

Add a new Comments

Some HTML is okay.