栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 面试经验 > 面试问答

datetime:舍入/修剪位数,以微秒为单位

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

datetime:舍入/修剪位数,以微秒为单位

最简单的方法是使用切片将微秒的最后三位数字切掉:

def format_time():    t = datetime.datetime.now()    s = t.strftime('%Y-%m-%d %H:%M:%S.%f')    return s[:-3]

我强烈建议切碎。我曾经写过一些对时间戳进行四舍五入而不是四舍五入的记录代码,当四舍五入改变了最后一位时,我发现它实际上有点令人困惑。定时代码在某个时间戳记时停止运行,但是由于舍入的缘故,存在带有该时间戳记的日志事件。切碎更简单,更可预测。

如果您想实际舍入数字而不是仅切碎,则需要做更多的工作,但并不可怕:

def format_time():    t = datetime.datetime.now()    s = t.strftime('%Y-%m-%d %H:%M:%S.%f')    head = s[:-7] # everything up to the '.'    tail = s[-7:] # the '.' and the 6 digits after it    f = float(tail)    temp = "{:.03f}".format(f)  # for Python 2.x: temp = "%.3f" % f    new_tail = temp[1:] # temp[0] is always '0'; get rid of it    return head + new_tail

显然,您可以使用更少的变量来简化上述操作;我只是希望它很容易遵循。



转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/640207.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号