【问题标题】:Choose two tuples from a list and calculate every possible pair in Python从列表中选择两个元组并在 Python 中计算每个可能的对
【发布时间】:2012-10-25 06:03:03
【问题描述】:

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

基本上我的列表看起来像

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

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

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

希望这很清楚!

【问题讨论】:

    标签: python math python-3.x tuples loops


    【解决方案1】:

    这是一个使用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
    

    然后在这些上执行您想要的任何计算...

    【讨论】:

    • 我试着打印它,它真的很长(因为我有超过 100 个元组,所以基本上是 100 x 100 对吗?)但无论如何它工作得非常感谢:D
    猜你喜欢
    • 2023-03-25
    • 1970-01-01
    • 2010-11-22
    • 1970-01-01
    • 2016-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多