2017-05-04 32 views
3

這是一個日期時間的default string representation如何使用strptime解析str(my_datetime)?

>>> from datetime import datetime, timezone 
>>> dt = datetime(2017, 1, 1, tzinfo=timezone.utc) 
>>> print(dt) 
2017-01-01 00:00:00+00:00 

什麼是正確的格式字符串解析與datetime.strptime?也就是說,代替'???'看到下面的結果:

>>> from dateutil.parser import parse 
>>> parse(date_str) == datetime.strptime('???', date_str) 
True 

回答

2

注意str(d)被記錄爲等同於d.isoformat(' ')。這將啓動與%Y-%m-%d %H:%M:%S2017-01-01 00:00:00),但後來:

  • 無論無關或.%f爲微秒;和
  • 或者沒有任何內容或與冒號的偏移量不匹配%z

.strptime不具有可選部分支持,因此沒有一個單一format參數,可以匹配所有這些可能的輸出的,並且不支持在結腸中的偏移量,所以有的不能根本無法處理。