文章详情页
python - 为什么用time.strftime格式化会用默认值?
浏览:179日期: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. python - 如何在docker上部署pyspider2. 现在大家是用Mysql还是mariaDb?3. mysql - Access denied for user ’ODBC’@’localhost’ (using password: NO)4. python2.7为什么点击了"开始"按钮后,tkinter上的按钮,图中红色部分,再也点不动了?5. mysql - msql什么叫并发6. 关于python的继承的一个疑问7. python - 关于计算日期的问题8. javascript - 微信小程序 如何实现这种左滑动出现删除的办法?有相关api吗?9. python3.x - 如何将python3.4的程序转为python2.710. 百度地图api - Android百度地图SDK,MapView上层按钮可见却不可触,怎么解决?
排行榜

网公网安备