<p>我负责创建一个快速的计划,让人们结对参加我正在帮助主办的体育比赛。我需要确保两个特定的名字不会配对在一起。你知道吗</p>
<p>我已经能够创建的东西,将采取名单上的名字,洗牌他们,然后生成另一个txt文件与配对。你知道吗</p>
<p>这一点非常有效,但是部分要求是防止两个名称成对出现。我已经有很长一段时间没有使用Python了,忘了它是否可能。你知道吗</p>
<pre><code>from random import shuffle
with open('names.txt', 'r') as f:
names = [name.strip() for name in f]
shuffle(names)
pairs = zip(names[::2], names[1::2])
with open('output.txt', 'w') as f:
f.write('Doubles Pairings 2019 are: \n \n')
for pair in pairs:
f.write('%s is paired with %s\n' % pair)
</code></pre>
<p>预期结果如下:</p>
<pre class="lang-none prettyprint-override"><code>Doubles pairings 2019 are:
Amy is paired with Jenny
Emily is paired with Lydia
Andrew is paired with Peter
Patrick is paired with Louise
Donald is paired with Sean
Sarah is paired with George
Jade is paired with Julia
Katie is paired with Joe
</code></pre>
<p>结果显然是随机的,但最好能确保艾米永远不能和肖恩配对。你知道吗</p>