3

シングルエリミネーショントーナメントを生成するプログラムに取り組んでいます。これまでのところ、私のコードは次のようになっています (私は始めたばかりです)

amount = int(raw_input("How many teams are playing in this tournament?  "))
teams = []
i = 0
while i<amount:
    teams.append(raw_input("please enter team name:  "))
    i= i+1

今、私は立ち往生しています。向かい合うチームを選択する2つの数字をランダムに選びたいです。数字はまったく繰り返すことができず、1 から「金額」までの範囲である必要があります。これを行う最も効率的な方法は何ですか?

4

3 に答える 3

11

randomモジュールを見てみましょう。

>>> import random
>>> teams = ['One team', 'Another team', 'A third team']
>>> team1, team2 = random.sample(teams, 2)
>>> print team1
'Another team'
>>> print team2
'One team'
于 2013-03-29T03:57:36.410 に答える
2
team1 = random.choice(teams)
teams.remove(team1)
team2 = random.choice(teams)

私はそれがうまくいくと思います。

于 2013-03-29T03:58:12.147 に答える
0

あなたが何を求めているのか完全にはわかりませんが、たとえば使用できる乱数を選択する

random.randint(1,10)

これにより、1から10までの乱数が得られます

注: random モジュールをインポートする必要があります

import random
于 2013-03-29T03:58:52.477 に答える