On 8/1/2017 2:10 PM, Piet van Oostrum wrote:
Ho Yeung Lee <jobmatt...@gmail.com> writes:

def isneighborlocation(lo1, lo2):
     if abs(lo1[0] - lo2[0]) < 7  and abs(lo1[1] - lo2[1]) < 7:
         return 1
     elif abs(lo1[0] - lo2[0]) == 1  and lo1[1] == lo2[1]:
         return 1
     elif abs(lo1[1] - lo2[1]) == 1  and lo1[0] == lo2[0]:
         return 1
     else:
         return 0


sorted(testing1, key=lambda x: (isneighborlocation.get(x[0]), x[1]))

return something like
[(1,2),(3,3),(2,5)]
I think you are trying to sort a list of two-dimensional points into a
one-dimensiqonal list in such a way thet points that are close together
in the two-dimensional sense will also be close together in the
one-dimensional list. But that is impossible.
It's not impossible, it just requires an appropriate distance function used in the sort.
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to