python中epsilon什么意思 |
您所在的位置:网站首页 › epsilon是什么意思在数学中 › python中epsilon什么意思 |
Machine epsilon is defined as the smallest number that, when added to one, yields a result different from one 在Python中,epsilon可以使用sys.float_info.epsilon找到,并返回一个相当于2^-52的值。但是,我可以将大于2^-53的任何数字加到1,仍然得到与1不同的结果。 但是根据上面对epsilon的定义,加上任何小于epsilon的值就应该得到epsilon。 这是否意味着sys.float_info.epsilon返回的值不正确,或者Python正在使用epsilon的其他定义? 下面的代码说明了这一点,浮点数以十六进制格式打印出来。import sys import numpy print 'epsilon=%g' % sys.float_info.epsilon # output: 2.22045e-16 epsilon = sys.float_info.epsilon print 'epsilon(hex) = %s' % float.hex(epsilon) # output: 0x1.0000000000000p-52 one = numpy.float64(1.0) delta = float.fromhex('0x1.fffffffffffffp-53') print 'delta = %s' % float.hex(delta) print 'epsilon - delta = %s' % (float.hex(epsilon-delta)) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |