擅长:python、mysql、java
<p>您可以使用<code>itertools.combinations</code>迭代列表中的项目:</p>
<pre><code>import itertools
for a, b, c in itertools.combinations(sorted(original_list), 3):
if a*a + b*b == c*c:
print("Pythagorean triple found:", a, b, c) # or whaver...
</code></pre>
<p>请注意,在将原始列表传递给<code>combinations</code>之前,我对其进行了排序。这确保了<code>a <= b <= c</code>。虽然我们并不真正关心<code>a</code>和<code>b</code>的相对顺序,但是<code>c</code>不小于这两者的事实是你所做测试的先决条件。你知道吗</p>