トランプの山から複数枚のカードを配布しよう
今回はNumPyを使って、配列からランダムで複数の要素を選択してみましょう。
トランプを模した52の要素を持つ配列を定義して、そこからランダムに要素を複数取得するプログラムを作ってみましょう。
配列から複数の要素を重複なしで選択するプログラム
配列から複数の要素を選択するプログラムは、以下のようになります。
random.choice()の第2引数は選択する数、第3引数は重複の有無を指定します。
選択する数は5個、第3引数はFalseなので重複は無しになっています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
### インポート import numpy as np ### カード配列 CARD = ['CA','C2','C3','C4','C5','C6','C7','C8','C9','CT','CJ','CQ','CK', 'DA','D2','D3','D4','D5','D6','D7','D8','D9','DT','DJ','DQ','DK', 'HA','H2','H3','H4','H5','H6','H7','H8','H9','HT','HJ','HQ','HK', 'SA','S2','S3','S4','S5','S6','S7','S8','S9','ST','SJ','SQ','SK'] ### カードをランダムで取得 cards = np.random.choice(CARD, 5, False) ### カード表示 print(cards) |
プログラムを実行すると、以下のように5個の要素がランダムに表示されます。
実行例
C:\>python card1-1.py
['DQ' 'C5' 'SQ' 'DK' 'S4']