def both_connections(con_A,con_B): l1 = [] l2 = [] #get the values for linekrs which have connectison #in an agreeable format for k in range(len(con_A)): a = [] b = [] for i in range(len(con_A[k])): a.append(con_A[k][i][1]) for i in range(len(con_B[k])): b.append(con_B[k][i][1]) l1.append(a) l2.append(b) #count the number that are unique and the same one=[] two=[] two_list=[] one_list=[] for k in range(len(l1)): two.append(len(points.intersection(l1[k],l2[k]))) one.append(len(points.difference(l1[k],l2[k]))) for k in range(len(l1)): two_list.append((points.intersection(l1[k],l2[k]))) one_list.append((points.difference(l1[k],l2[k]))) return one,two,one_list, two_list
def search(connected,A,B): add=False for i in range(len(connected)): #is it in there already if connected[i].count(A)==1: if connected[i].count(B)==0: connected[i].append(B) if connected[i].count(B)==1: if connected[i].count(A)==0: connected[i].append(A) #look through connectd if there is an intersection, take the union and #delete what was there for i in range(len(connected)): for j in range(len(connected)): if intersection(connected[i],connected[j])!=[]: connected[i]=union(connected[i],connected[j]) connected[j]=connected[i] #Removed any doubles connected=unique(connected) return connected