Python 2.7 关于python中yield的用法
我写这段代码:Python 2.7 关于python中yield的用法,python-2.7,Python 2.7,我写这段代码: def frange(start, end, increase): x = start while x < end: yield x x = x + increase print(list(frange(1, 2, 0.3))) 但是我不知道为什么最后一个元素是1.900000000000001,而不是1.9。 您能告诉我原因吗?使用的文档来了解原因。这与收益率无关,但与表示浮点值的限制有关。Python不仅仅是对你隐瞒这一点的语言。Python太诚实了
def frange(start, end, increase):
x = start
while x < end:
yield x
x = x + increase
print(list(frange(1, 2, 0.3)))
但是我不知道为什么最后一个元素是1.900000000000001
,而不是1.9
。
您能告诉我原因吗?使用的文档来了解原因。这与
收益率无关,但与表示浮点值的限制有关。Python不仅仅是对你隐瞒这一点的语言。Python太诚实了。
[1, 1.3, 1.6, 1.9000000000000001]