文章详情页
python - 为什么用time.strftime格式化会用默认值?
浏览:206日期: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. 如何解决Centos下Docker服务启动无响应,且输入docker命令无响应?2. 关docker hub上有些镜像的tag被标记““This image has vulnerabilities””3. sql语句,通过一个中文怎么能查询数据表中的这个字段第一个字是这个中文呢4. docker镜像push报错5. 我在centos容器里安装docker,也就是在容器里安装容器,报错了?6. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!7. docker绑定了nginx端口 外部访问不到8. mac里的docker如何命令行开启呢?9. docker内创建jenkins访问另一个容器下的服务器问题10. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下
排行榜

网公网安备