文章详情页
python - 为什么用time.strftime格式化会用默认值?
浏览:148日期:2022-07-18 16:42:55
问题描述
a = time.time()
time.sleep(3)
b = time.time()
time_consuming = time.strftime('%H:%M:%S', time.localtime(b - a))print(time_consuming)
用以上代码去跑time.strftime格式化时间后小时处总有个默认值,这个8小时的默认值怎么来的
问题解答
回答1:因为时区的问题,不应该用 time,应该用 datetime.timedelta 来计算参考下面代码
import timeimport datetimea = time.time()time.sleep(3)b = time.time()print datetime.timedelta(seconds=(b -a )) # <-- 推荐time_consuming = time.strftime('%H:%M:%S', time.gmtime(b - a)) # <-- 不推荐print(time_consuming)
输出如下:
0:00:03.00480200:00:03回答2:
8 小时是时区转换导致的:北京是东八区,时间要往前加 8 小时。
相关文章:
1. javascript - html 中select如何修改样式,鼠标悬浮时改变option样式,有没有插件啊2. golang - 用IDE看docker源码时的小问题3. javascript - vue异步数据打印问题4. javascript - weex和node,js到底是怎样一个关系呢?5. javascript - 父级设置了相对定位。子元素设置了绝对定位。子元素中包含了浮动的table,这个时候高度不能自适应。6. docker start -a dockername 老是卡住,什么情况?7. dockerfile - 为什么docker容器启动不了?8. Span标签9. javascript - 表单ajax提交后跳转,手机按返回又进入这个表单页了!!10. javascript - [,null]是什么用法
排行榜
