getting smallest of coordinates that differ by N or more in Python

Posted by user248237 on Stack Overflow See other posts from Stack Overflow or by user248237
Published on 2010-06-01T22:39:41Z Indexed on 2010/06/01 22:43 UTC
Read the original article Hit count: 119

Filed under:
|
|
|

suppose I have a list of coordinates:

data = [[(10, 20), (100, 120), (0, 5), (50, 60)], [(13, 20), (300, 400), (100, 120), (51, 62)]]

and I want to take all tuples that either appear in each list in data, or any tuple that differs from all tuples in lists other than its own by 3 or less. How can I do this efficiently in Python?

For the above example, the results should be:

[[(100, 120), # since it occurs in both lists
  (10, 20), (13, 20), # since they differ by only 3 
  (50, 60), (51, 60)]]

(0, 5) and (300, 400) would not be included, since they don't appear in both lists and are not different from elements in lists other than their own by 3 or less.

how can this be computed? thanks.

© Stack Overflow or respective owner

Related posts about python

Related posts about database