-4

为了突出我在这里尝试做的是 C 代码中的等价物。

for ( int i = 0; i < COUNT; ++i )
{
    for ( int j = i + 1; j < COUNT; ++j )
    {
        foo( i, j );
    }
}

...其中 COUNT 是列表的大小,'foo' 是一个函数,它在数组中采用两个不同的条目。

非常感谢数据库

4

1 回答 1

3

我可能在您的问题中遗漏了一些东西,但我相信这是一个解决方案。

 for i in range(0,COUNT):
    for j in range(i+1,COUNT):
        foo(i,j)

如果您想存储结果,您也可以在列表理解中完成整个操作:

[[foo(i,j) for j in range(i+1,COUNT)] for i in range(0,COUNT)]

这可能更pythonic,而且肯定更快。

于 2013-05-23T20:29:48.930 回答