Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.0+设置为最大4位小数和四舍五入_Python_String_Numbers_Decimal_Rounding - Fatal编程技术网

Python 3.0+设置为最大4位小数和四舍五入

Python 3.0+设置为最大4位小数和四舍五入,python,string,numbers,decimal,rounding,Python,String,Numbers,Decimal,Rounding,所以我有一个任务来匹配预期的输出:34.7381。但是我得到了34.73809999999。我意识到这只是一个四舍五入的数字,只有4个小数位,但我不知道如何在短时间内做到这一点 我可以使用蛮力,检查小数点的位置,检查小数点后有多少个字符,删除所有字符,然后自己进行取整。但对于如此简单的事情来说,这似乎相当复杂和愚蠢 谢谢你的帮助 不用担心,只需指定打印时所需的精度即可: >>> print('{:.4f}'.format(34.73809999999999)) 34.7381

所以我有一个任务来匹配预期的输出:34.7381。但是我得到了34.73809999999。我意识到这只是一个四舍五入的数字,只有4个小数位,但我不知道如何在短时间内做到这一点

我可以使用蛮力,检查小数点的位置,检查小数点后有多少个字符,删除所有字符,然后自己进行取整。但对于如此简单的事情来说,这似乎相当复杂和愚蠢


谢谢你的帮助

不用担心,只需指定打印时所需的精度即可:

>>> print('{:.4f}'.format(34.73809999999999))
34.7381

不用担心,只需指定打印时所需的精度:

>>> print('{:.4f}'.format(34.73809999999999))
34.7381

可以使用字符串格式:

>>> '{:0.4f}'.format(34.7381)
    '34.7381'
>>> '{:0.4f}'.format(34.73809999999999)
    '34.7381'

可以使用字符串格式:

>>> '{:0.4f}'.format(34.7381)
    '34.7381'
>>> '{:0.4f}'.format(34.73809999999999)
    '34.7381'
你试过了吗

你试过了吗

你用的是浮点还是十进制?虽然可以输出四舍五入的结果或类似的结果,但使用浮点不能得到精确的十进制结果。您使用的是浮点还是十进制?虽然可以输出四舍五入的结果或类似的结果,但使用浮点不能得到精确的十进制结果。