Can I optimize two for loops that look for the closest zip code based on lat/lon?
So a better approach may be to :

covert your myFile to a Numpy array [[lat0, long0], [lat1, long10], ...].

lat_long = np.asarray(myFile)


Sort this array on latitude

lat_long = np.sort(lat_long, axis=0)


find the closest western points to the target point

closest_point_to_west = lat_long[lat_long[:, 0] &gt;= myPoint[0]]

Do the same for the other wind directions, this will give you the four closest points using Numpy's efficient slicing operations and you can do a distance measurement on only 4 of the points and not all of them.