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)] -- https://mail.python.org/mailman/listinfo/python-list