Python中关于datetime的操作
0 条评论Datetime中offset-naive与offset-aware时间的计算
在使用Django时,默认是开启对多时区的支持的,在获取时间的时候会是如下形式:datetime.datetime(2014, 4, 18, 15, 37, 7, tzinfo=<UTC>)
我们可以利用django.utils.timezone中提供的localtime方法来将该时间转换为本地时间:
1 | >>> dt |
有时候,我们需要将该时间与当前时间做比较,例如计算差值,你可能会想到直接这么做:
1 | >>> import datetime |
不过这是不对的,并告知如下错误:
1 | Traceback (most recent call last): |
问题就出在利用datetime.datetime.now()得到的当前时间是offset-naive的,而另外一个却是offset-aware的,因此我们需要将这里的dt转成与now一样的形式,可以这么做:
1 | >>> dt = dt.replace(tzinfo=None) |
声明:
文章标题:Python中关于datetime的操作
文章作者:h3h3da
文章链接:https://www.liucunzhan.com/p/059de75c-8544-4e8a-873c-3649e011bc19
文章版权属本博主所有,有问题或者建议欢迎在下方评论。欢迎转载、引用,但请标明作者和原文地址,谢谢。
喜欢,就支持我一下吧~
0 条评论