from itertools import groupby

testing1 = [(1,1),(2,3),(2,4),(3,5),(3,6),(4,6)]
def isneighborlocation(lo1, lo2):
    if abs(lo1[0] - lo2[0]) == 1  or lo1[1] == lo2[1]:
        return 1
    elif abs(lo1[1] - lo2[1]) == 1  or lo1[0] == lo2[0]:
        return 1
    else:
        return 0

groupda = groupby(testing1, isneighborlocation)
for key, group1 in groupda:
    print key
    for thing in group1:
        print thing

expect output 3 group
group1 [(1,1)]
group2 [(2,3),(2,4]
group3 [(3,5),(3,6),(4,6)]
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to