簡體   English   中英

是否可以通過不同格式的字符串輸入在 Python3 中使用標准日期時間

[英]is it possible to standard datetime in Python3 from different format of string input

我現在需要在 Python3 中將字符串解析為日期時間,這是我的代碼:

parse_time = time.strptime(pub_time, '%b %d %Y %I:%M%p')
formatted_timestamp = time.mktime(parse_time)

現在我遇到一個錯誤:

time data '2020-08-02T08:58:01.000Z' does not match format '%b %d %Y %I:%M%p'

現在我該怎么做才能解決它? 那么我的pub_time可能與 inte.net 有不同的格式解析,我應該怎么做才能使其自動套件具有不同的格式。 最好的是自動檢測不同類型的時間格式並將其標准化為一種方式。

因為我真的不知道web的內容返回的是什么格式。 如果它可以自動檢測格式並轉換,那么我不需要編寫任何映射或檢測代碼。

使用maya lib 可能會有所幫助:

import maya

date_array = [
    '2018-06-29 08:15:27.243860',
    'Jun 28 2018 7:40AM',
    'Jun 28 2018 at 7:40AM',
    'September 18, 2017, 22:19:55',
    'Sun, 05/12/1999, 12:30PM',
    'Mon, 21 March, 2015',
    '2018-03-12T10:12:45Z',
    '2018-06-29 17:08:00.586525+00:00',
    '2018-06-29 17:08:00.586525+05:00',
    'Tuesday , 6th September, 2017 at 4:30pm'
]

for date in date_array:
    print('Parsing: ' + date)
    dt = maya.parse(date).datetime()
    print(dt)
    print(dt.date())
    print(dt.time())
    print(dt.tzinfo)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM