web-dev-qa-db-ja.com

Pythonセットから2つのランダムなアイテムを選択するにはどうすればよいですか?

現在、nサイズのPythonセットがあり、n> = 0です。1行または2行の簡単なPythonソリューションがありますか?たとえば、セットは次のようになります。

fruits = set(['Apple', 'orange', 'watermelon', 'grape'])

目標は、上記から2つのランダムなアイテムを選択することです。上記のセットには、0、1、またはそれ以上のアイテムを含めることができます。上記を行うことを考えることができる唯一の方法は、セットをリスト(可変)に変換し、そこからセットの長さ内で2つのランダムな一意のインデックスにアクセスすることです。

142
Thierry Lam

randomモジュールを使用します。 http://docs.python.org/library/random.html

import random
random.sample(set([1, 2, 3, 4, 5, 6]), 2)

これは、2つの値をサンプリングしますwithout置換(したがって、2つの値は異なります)。

294
John Millikin