在 Python 中读取文件时如何更新计数器变量?

How to update a counter variable when reading a file in Python?

我正在研究一个距离计算器,它应该从包含多行不同距离级别的文本中读取文件。然后我应该将第一个距离与第二个距离进行比较,得到差异,然后将差异存储在一个新变量中,然后该新变量将自身与下一行进行比较,等等。这种比较应该发生在整个文本中文件,直到 For 循环结束。这是我编写的一些代码:

file_name = input("\nEnter name of data file: ")
text_file = open(file_name,'r')
for line in text_file:
    line = line.strip()
    rows = line.split(" ")
    latitude = float(rows[0])
    longitude = float(rows[1])
    longitude_two = longitude
    latitude_two = latitude
    distance = float(calculate_distance(latitude,longitude,latitude_two,longitude_two))
    print(distance)

文本文件非常基本,看起来像这样:

54.24525 -66.25451
66.24544 -52.32658
88.21414 -52.99985
85.32111 -49.32323

每次我 运行 这个循环,我的输出都是零。如果有人能帮助我,那就太好了!

正如许多人在评论中所指出的那样,这段代码让你很痛苦。

latitude = float(rows[0])
longitude = float(rows[1])
longitude_two = longitude
latitude_two = latitude

尝试这样的事情。

file_name = input("\nEnter name of data file: ")
text_file = open(file_name,'r')
latitude = None
longitude = None

for line in text_file:
   line = line.strip()
   rows = line.split(" ")
   latitude_two = float(rows[0])
   longitude_two = float(rows[1])
   if latitude != None:
       distance = float(calculate_distance(latitude,longitude,latitude_two,longitude_two))
       print(distance)

   longitude = longitude_two
   latitude = latitude_two