擅长:python、mysql、java
<p>您的代码不应该产生<code>IndexError: list index out of range</code>,因为在您的示例中<code>s</code>包含10个元素,您选择7。
可能是在另一个集合上执行此代码时引发了此异常。你知道吗</p>
<p>但是,您应该修复一个错误,该错误会阻止您看到所寻求的结果:</p>
<p>每次将所有<code>s</code>附加到<code>i</code>中时,只需附加所选的值。你知道吗</p>
<p>建议:</p>
<pre><code>s=set(range(1,10))
import random
i = []
while len(i)<8:
chosen = random.choice(list(s))
s.remove(chosen)
i.append(chosen)
print i
</code></pre>