IndexError: list index out of range longitude

IndexError: list index out of range longitude

想要创建一个函数来读取带有纬度和经度的动物名称文件,然后它将 return 设定区域内的#animals,但是我不断收到索引错误,我是不知道为什么,我还是 Python 的新手,只需要一点帮助 :')

def LocationCount(FileName, Distance, Lat2, Lon2):     
    List =[]                                                    
    File = open(FileName, "r")                                  
    for line in File:                                          
            List.append(LineToList(line))                       
    File.close()                                                

    List2 =[]
    ListCount = 0
    while ListCount <= len(List):
        if CalculateDistance(List[ListCount][1], List[ListCount][2], Lat2, Lon2) <= Distance:
            List2.append(line)
        ListCount += 1
    return(List2)

S = LocationCount("Mammal.txt", 10, 54.988056, -1.619444) 
print (len(List2))

while ListCount <= len(List):

改成,

while ListCount < len(List): 列表为 0 索引。

您还将值存储在 S 中并尝试打印在此范围内未定义的 list2。

S = LocationCount("Mammal.txt", 10, 54.988056, -1.619444) print (len(List2))

替换为,

S = LocationCount("Mammal.txt", 10, 54.988056, -1.619444) print len(S)