Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.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 while循环没有预期的循环次数_Python_Loops_While Loop - Fatal编程技术网

Python while循环没有预期的循环次数

Python while循环没有预期的循环次数,python,loops,while-loop,Python,Loops,While Loop,我有4个嵌套的循环,它们看起来都像下面的一个 x = 0.0 while x <= 1.0: ls_alloc[0] = x x = x + 0.1 x=0.0 而x的问题是0.1不能精确地表示为浮点值。取而代之的是一个略大于0.1的数字: In [2]: '%.20f' % 0.1 Out[2]: '0.10000000000000000555' 这会减少您可能期望的循环迭代次数。而且,x永远不会精确命中1.0(即使后者可以精确表示) 值得注意的是,这种行为通

我有4个嵌套的循环,它们看起来都像下面的一个

x = 0.0    
while x <= 1.0:
    ls_alloc[0] = x
    x = x + 0.1
x=0.0

而x的问题是
0.1
不能精确地表示为
浮点值。取而代之的是一个略大于0.1的数字:

In [2]: '%.20f' % 0.1
Out[2]: '0.10000000000000000555'
这会减少您可能期望的循环迭代次数。而且,
x
永远不会精确命中
1.0
(即使后者可以精确表示)


值得注意的是,这种行为通常是浮点算术的一种属性,而不是Python特有的。

是否混淆了变量名?
one
应该是
x
吗?是的,很抱歉之前都称为one,但我在问题中更改了它以避免混淆。重要的是要指出这不是Python问题,而是浮点问题。