将字符串转换为日期时间对象

将字符串转换为日期时间对象,第1张

将字符串转换为日期时间对象

要以RFC
2822格式
解析日期,可以使用

email
package:

from datetime import datetime, timedeltafrom email.utils import parsedate_tz, mktime_tztimestamp = mktime_tz(parsedate_tz("Thu, 16 Oct 2014 01:16:17 EDT"))# -> 1413436577utc_dt = datetime(1970, 1, 1) + timedelta(seconds=timestamp)# -> datetime.datetime(2014, 10, 16, 5, 16, 17)

注意:

parsedate_tz()
假设EDT对应于
-0400
UTC偏移量,但是在EDT是澳大利亚的情况下可能不正确
+1100
pytz
在这种情况下使用AEDT
),即时区缩写可能不明确。请参阅在Python中解析带有时区缩写名称的日期/时间字符串?

相关的Python错误:strptime中的%Z与EST和其他不匹配。

如果您的计算机(可能)使用POSIX时间戳,并且您确定输入日期在系统可接受的范围内(距离将来/过去不太远),并且不需要保留微秒的精度,则可以用途

datetime.utcfromtimestamp

from datetime import datetimefrom email.utils import parsedate_tz, mktime_tztimestamp = mktime_tz(parsedate_tz("Thu, 16 Oct 2014 01:16:17 EDT"))# -> 1413436577utc_dt = datetime.utcfromtimestamp(timestamp)# -> datetime.datetime(2014, 10, 16, 5, 16, 17)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5623613.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存