Python 截断小数点之前的值
我正在尝试制作一个计算器,将厘米转换成码、英尺和英寸。示例:127.5厘米是1码,1英寸,等等。但我只是想知道如何才能保留小数点后的值,是否有办法截断小数点前的数字。因此,如果用户输入的值为3.4231码,我想保留“.4231”的值,这样我可以将其转换为英尺,然后再将其转换为英尺以外的英寸。如果不清楚,很抱歉。这是针对Python3的,Ignacio的答案很好,但是如果您希望它处理负数,python数学库为您提供了Python 截断小数点之前的值,python,decimal,truncate,Python,Decimal,Truncate,我正在尝试制作一个计算器,将厘米转换成码、英尺和英寸。示例:127.5厘米是1码,1英寸,等等。但我只是想知道如何才能保留小数点后的值,是否有办法截断小数点前的数字。因此,如果用户输入的值为3.4231码,我想保留“.4231”的值,这样我可以将其转换为英尺,然后再将其转换为英尺以外的英寸。如果不清楚,很抱歉。这是针对Python3的,Ignacio的答案很好,但是如果您希望它处理负数,python数学库为您提供了modf: >>> 3.4231 % 1 0.423099999
modf
:
>>> 3.4231 % 1
0.4230999999999998
>>> math.modf(3.4321)[0]
0.43210000000000015
>>> math.modf(-3.4321)[0]
-0.43210000000000015
Ignacio的答案很好,但是如果您希望它处理负数,Python数学库为您提供了
modf
:
>>> math.modf(3.4321)[0]
0.43210000000000015
>>> math.modf(-3.4321)[0]
-0.43210000000000015
好的老式
value-int(value)
有什么问题?好的老式value-int(value)
有什么问题?-3.4231%1
产生0.5769000000000002
(可能负数不是物理测量的主要考虑因素)>-3.4231%1
收益率0.576900000000002
(可能负数对于物理测量来说并不是一个很大的考虑因素)考虑一下如果出现负数,你的算法会做什么。结果会是负数,但这很容易处理。问题是,“怎么了…”不是“修复有多困难…”请考虑如果出现负数,您的算法会做什么。结果会是负数,但这很容易处理。问题是,“有什么问题…”而不是“修复有多困难…”