首页 > 解决方案 > 在文本文件中查找大于 x 的数字数量

问题描述

我应该在城市或高速公路上使用少于 22 或 27 MPG 的数据文件中找到“汽车”的数量。我应该编写一个程序来计算少于该里程的汽车的数量/数量。

这是我的代码:

def GasGuzzlers(list1, list2):
  amount1 = 0
  amount2 = 0
  with open(list1, "r") as list1:
      line = list1.readline()
      for line in list1:
          while float(line) < 22.0:
              amount1+=1

  with open(list2, "r") as list2:
      line2 = list2.readline()
      for amount2 in list2:
          while float(line2) < 27.0:
              amount2+=1
  print(amount1, amount2)

它不会打印任何内容,我尝试了多种替代方法,并在我这样做时得到“0 0”作为输出。我觉得找到少于一定里程的汽车数量应该不难。

如果有帮助,这是我老师的指示:

“编写一个函数 countGasGuzzlers(list1, list2) 来计算所测试的车辆模型中的耗油量 - 对于这个程序,将“耗油量”定义为一辆汽车在城市或高速公路上的油耗低于 22 mpg 或低于 27 mpg 。”

标签: pythonfunctionwhile-loop

解决方案


你被困在一个无休止的while循环中:

while float(line) < 22.0:
while float(line2) < 27.0:

将它们更改为:

if float(line) < 22.0:
if float(line2) < 27.0:

推荐阅读