文章详情页
python - 为什么用time.strftime格式化会用默认值?
浏览:213日期: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. browsersync一次只能检测一个HTML文件?2. 修改mysql配置文件的默认字符集重启后依然不生效3. Java使用数组的速度比C ++中std :: vector快8倍。我做错什么了?4. html5 - 在Mac里使用vscode,却无法使用已下载的扩展……5. Java:使用URL下载图片为何图片下载不完全呢?6. java - mybatis源码分析7. docker网络端口映射,没有方便点的操作方法么?8. css - html根字体设置成很大的值后, 包裹了行内元素的div莫名变高是什么原因9. 请教一个python字符串处理的问题?10. docker容器呢SSH为什么连不通呢?
排行榜

网公网安备