Python 2.7 python双重迭代的问题

Python 2.7 python双重迭代的问题,python-2.7,iteration,nested-loops,Python 2.7,Iteration,Nested Loops,你好,提前谢谢你的帮助 我是Python的初学者,在迭代方面遇到了问题。我知道itertools可能是我问题解决方案的一部分,但我似乎没有正确地表述它,在论坛上也找不到足够类似的问题 基于一个numpy指数向量V,另一个向量Y和一些函数f,我想计算如下: for i in V[:-1]: for j in V[i+1:]: f(Y[i], Y[j]) 。。。你知道这是行不通的,因为你比我更了解python!它似乎永远不会达到“j”(到目前为止,我所理解的是V不可重复两次

你好,提前谢谢你的帮助

我是Python的初学者,在迭代方面遇到了问题。我知道itertools可能是我问题解决方案的一部分,但我似乎没有正确地表述它,在论坛上也找不到足够类似的问题

基于一个numpy指数向量V,另一个向量Y和一些函数f,我想计算如下:

for i in V[:-1]:
    for j in V[i+1:]:
        f(Y[i], Y[j])
。。。你知道这是行不通的,因为你比我更了解python!它似乎永远不会达到“j”(到目前为止,我所理解的是V不可重复两次,尽管我不确定它的意思)

有什么好方法可以做到这一点?请注意,不同时计算f(Y[i],Y[j])和f(Y[j],Y[i])非常重要,因为它是对称的,并且运行时间很长


谢谢

事实证明,itertools.combines似乎是有效的:
从itertools导入(element1,element2)的组合(Y[V],2):f(element1,element2)
我不知道这是否是最好的方法,但至少它解决了我的问题!这绝对是解决这个问题的一个好方法,这就是
itertools.combines
的基本用途。你应该把这个贴出来作为你问题的答案。