如何将字符串转换为日期时间? [复制]
Posted
技术标签:
【中文标题】如何将字符串转换为日期时间? [复制]【英文标题】:How to convert string to datetime? [duplicate] 【发布时间】:2018-03-24 18:18:28 【问题描述】:我有以下字符串:
'2017-08-15T13:34:35Z'
如何将此字符串转换为我可以调用.isoformat()
的对象?
someobject = convert('2017-08-15T13:34:35Z')
someobject.isoformat()
convert()
如何实现?
【问题讨论】:
您可以使用datetime.datetime.strptime方法通过格式字符串将字符串转换为日期时间。 【参考方案1】:Here 将字符串解析为日期时间,则可以:
def convert(s):
return datetime.strptime(s, '%Y-%m-%dT%H:%M:%SZ')
someobject = convert('2017-08-15T13:34:35Z')
print(someobject.isoformat())
【讨论】:
忽略时区是错误的。 'Z' 是 UTC +0 的标准时区。试试这个:import pytz
import datetime
print(datetime.datetime.strptime('2020-02-03T14:33:22Z', '%Y-%m-%dT%H:%M:%SZ').replace(tzinfo=pytz.UTC))
【参考方案2】:
你可以使用dateutil的parser:
>>> import dateutil.parser
>>> date = dateutil.parser.parse('2017-08-15T13:34:35Z', ignoretz=True)
>>> date
datetime.datetime(2017, 8, 15, 13, 34, 35)
>>> date.isoformat()
'2017-08-15T13:34:35'
【讨论】:
忽略时区是错误的。 'Z' 是 UTC +0 的标准时区。试试这个:import pytz
import datetime
print(datetime.datetime.strptime('2020-02-03T14:33:22Z', '%Y-%m-%dT%H:%M:%SZ').replace(tzinfo=pytz.UTC))
以上是关于如何将字符串转换为日期时间? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何在python中将字符串日期转换为日期时间格式? [复制]
如何将日期(“Ymd”)的输出转换为 PHP 中的数字? [复制]