处理许多尝试的更好方法,除了



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

我有一个字符串time它表示几种格式之一的日期时间对象。我想将其更改为特定的。现在我的代码看起来像这样:

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

等等。

有没有更好、更聪明的方法呢?

我会从任何格式转换为日期时间对象,然后将其放入您想要的格式。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(....)
```

最新更新