关于python循环

关于python循环,python,loops,if-statement,while-loop,Python,Loops,If Statement,While Loop,我有一段代码摘录: while True: if a == float(b[0]): y = b[1] x.append(y) else: a = a + 1 其中b是两列宽的列表。问题是if语句不会遍历所有元素,因此永远不会到达else语句。我在想我怎么才能解决这个问题 for item in b: if a == float(item

我有一段代码摘录:

      while True:

           if a == float(b[0]):
               y = b[1]
               x.append(y)

           else: 
               a = a + 1
其中b是两列宽的列表。问题是if语句不会遍历所有元素,因此永远不会到达else语句。我在想我怎么才能解决这个问题

for item in b:
   if a == float(item[0]):
      y = item[1]
      x.append(y)
   else:
      a = a + 1
此外,您还应注意,使用
=
比较两个
浮点数可能会导致意外行为:

  2.2 * 3.0 == 6.6
  False
  3.3 * 2.0 == 6.6
  True
参见以下主题: