我有一個函式,它接收一個字串并通過決議器將值轉換為日期。
讓我們稱之為日期轉換器:
def date_converter(x):
return dateparser.parse(x).dt.date
因此,如果將 '2021 jan 21' 作為字串,它將變為 2021-01-21
但是,該函式現在需要獲取部分日期“21jan”并將其轉換為 2021-01——無論日期是什么。日子無所謂。
我如何設定決議器以知道它將接收一年和一個月,假設它將接收的只是一個字串?
uj5u.com熱心網友回復:
這就是我認為您正在尋找的內容:
s = "21jan"
import datetime
d = datetime.datetime.strptime(s, "%y%b").date()
print(d)
輸出:
2021-01-01
uj5u.com熱心網友回復:
這個解決方案使用了非常靈活和寬容的 datetime.parser 模塊。這很慢,但非常有用。
import datetime
from dateutil import parser
def date_convertor(x:str)->datetime.date:
#assuming the day of the month is never present
date_string_to_parse = x "01"
converted_dt = parser.parse(date_string_to_parse,yearfirst=True)
return converted_dt.date()
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/446036.html
下一篇:如何將Pandas輸出決議為浮動
