新手来了我有以下代码:
myADC = 128
maxVoltage = 5.0
maxADC = 255.0
VoltsPerADC = maxVoltage/maxADC
myVolts = myADC * VoltsPerADC
print "myADC = {0: >3}".format(myADC)
print "VoltsPerADC = {0: >7}".format(VoltsPerADC)
print VoltsPerADC
print "myVolts = {0: >7}".format(myVolts)
print myVolts
这将输出以下内容:
myADC = 128
VoltsPerADC = 0.0196078
0.0196078431373
myVolts = 2.5098
2.50980392157
我一直在寻找有关默认情况下如何确定有效位数的解释,但找不到对我有意义的解释。此链接 link text 表明默认情况下“打印”语句将数字打印为 10 个有效数字,但在我的结果中似乎并非如此。
如何确定有效数字/精度的数量?
有人可以为我解释一下。
提前感谢您的时间和耐心。
最佳答案
精度由硬件决定。 Python 使用硬件浮点数(实际上是 double 数)作为其浮点数。教程中讨论了这些含义:http://docs.python.org/tutorial/floatingpoint.html
如果您想要更多地控制精度和舍入,您应该考虑使用 decimal 模块。
关于Python - 除法结果中的有效位数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2559835/