1
當我嘗試做以下如何使用日期時間可以是「24」的小時字符串?
datetime.datetime.strptime("2824", "%d%H")
我收到以下錯誤:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.5/_strptime.py", line 510, in _strptime_datetime
tt, fraction = _strptime(data_string, format)
File "/usr/lib/python3.5/_strptime.py", line 346, in _strptime
data_string[found.end():])
ValueError: unconverted data remains: 4
據我所看到的,這是因爲使用「24」作爲一個小時,而不是「的00" 。最終,我的代碼是這樣的:
tmp = datetime.datetime.strptime(timestamp, "%d%H")
now = datetime.datetime.utcnow()
start_datetime = datetime.datetime(
now.year,
now.month,
tmp.day,
tmp.hour,
tmp.minute
)
這裏,變量timestamp
的形式DDHH,其中DD是日期,HH是小時,HH可以採取值「24」的字符串。我應該如何解決這個不平凡的問題?
這種日期來自哪裏? –
24是否意味着_same_爲00(即給定日期的開始),還是意味着第二天的_00_? (如日本IIRC的傳統)。 – MatsLindh
@BillBell這出現在TAF(終端機場預測)字符串中,例如:TAF EGPF 281657Z 2818/2918 15008KT 9999 FEW035 PROB40 TEMPO 2818/2824 9000 RA TEMPO 2900/2908 7000 RA PROB40 TEMPO 2902/2908 BKN012 BECMG 2907/2910 23012KT PROB30 TEMPO 2912/2918 8000 SHRA'。 TAF中的「2818/2824」這樣的字符串是預測有效的時間窗口,時間窗口的開始時間是29日18:00,時間窗口的末尾是28日24:00 。 – BlandCorporation