0

所以我有这个包含元组的列表,我还编写了一个代码来计算该列表中任何两个元组之间的欧几里得距离。我在编写计算每对可能的元组的代码时遇到问题 =SI 知道有很多类似的问题,许多人建议使用 itertools,但我对此并不熟悉,如果可能的话,我希望有一个常规的循环代码。但是如果有人可以教我,itertools 会很酷:)

基本上我的清单看起来像

[(1,2,3,4),(5,6,7,8)(9,10,11,12)....etc]

我的距离编码工作正常。只是我遇到问题的选择部分。谢谢!

编辑:对不起,忘了提,所以我想要所有可能对的所有距离的总和。回顾一下,我在该列表中有 100 个元组,我想计算 tuple1/tuple2、tuple1/tuple3、...tuple99/tuple100 之间的距离,并将所有这些相加并将其放入一个列表中。

希望这很清楚!

4

1 回答 1

2

这是一个使用的简化示例itertools

from itertools import combinations

t = [(1,2), (3,4), (5,6)]

for i in combinations(t, 2):
    print i

输出:

(1, 2) (3, 4) # 1st with 2nd
(1, 2) (5, 6) # 1st with 3rd
(3, 4) (5, 6) # 2nd with 3rd

然后对那些执行任何你想要的计算......

于 2012-10-25T06:53:08.413 回答