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

Python-如何设置小数位格式以始终显示2个小数位?

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

Python-如何设置小数位格式以始终显示2个小数位?

我想你可能正在使用模块中的

Decimal()
对象
decimal
?(如果你需要精确到小数点后两位任意大数的精度,则绝对应该如此,这就是你的问题标题所建议的……)

如果是这样,则文档的“ 十进制常见问题解答”部分将包含一个问题/答案对,这可能对你有用:

问:在具有两位小数位的定点应用程序中,某些输入有很多位,需要四舍五入。其他人不应有多余的数字,需要进行验证。应该使用什么方法?

答:quantize()方法四舍五入到固定的小数位数。如果设置了不精确陷阱,则它对于验证也很有用:

>>> TWOPLACES = Decimal(10) ** -2       # same as Decimal('0.01')>>> # Round to two places>>> Decimal('3.214').quantize(TWOPLACES)Decimal('3.21')>>> # Validate that a number does not exceed two places>>> Decimal('3.21').quantize(TWOPLACES, context=Context(traps=[Inexact]))Decimal('3.21')>>> Decimal('3.214').quantize(TWOPLACES, context=Context(traps=[Inexact]))Traceback (most recent call last):   ...Inexact: None

下一个问题是

问:一旦有了有效的两个位置输入,如何在整个应用程序中保持不变?

如果你需要答案(以及许多其他有用的信息),请参阅

docs
的上述部分。另外,如果你将
Decimals
的精度保持在小数点后两位(这意味着将所有数字保持在小数点的左边,而将所有数字保持在小数点的右边,则不再需要其他精度…),然后将它们转换为
str
可以正常工作:

str(Decimal('10'))# -> '10'str(Decimal('10.00'))# -> '10.00'str(Decimal('10.000'))# -> '10.000'


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

版权所有 (c)2021-2022 MSHXW.COM

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