Python 处理许多问题的更好方法

Python 处理许多问题的更好方法,python,string,datetime,Python,String,Datetime,我想知道更改日期时间字符串格式的最佳方法是什么 我有一个字符串time,它以几种格式之一表示datetime对象。我想把它改成一个特定的。现在,我的代码看起来像: try: record['time'] = datetime.datetime.strptime(time, 'yyyy-MM-dd HH:mm:ss').strftime('%Y-%m-%dT%H:%M:%S.%fZ') except: pass try: record['time'] = datetime.

我想知道更改日期时间字符串格式的最佳方法是什么

我有一个字符串
time
,它以几种格式之一表示datetime对象。我想把它改成一个特定的。现在,我的代码看起来像:

try:
    record['time'] = datetime.datetime.strptime(time, 'yyyy-MM-dd HH:mm:ss').strftime('%Y-%m-%dT%H:%M:%S.%fZ')
except:
    pass
try:
    record['time'] = datetime.datetime.strptime(time, 'yyyy-MM-ddTHH:mm:ss').strftime('%Y-%m-%dT%H:%M:%S.%fZ')
except:
    pass
等等


有更好、更智能的方法吗?

我会将datetime对象从任何格式转换为您想要的格式。
dateutil
包有一个优秀的解析器

from dateutil.parser import parse

try:
    as_date = parse(time)
except ValueError:
    # got something unparsable -- figure out how to handle it.

my_formatted_string = as_date.strftime(....)
```
使用图书馆。它就像一个符咒,几乎适用于任何日期/时间。