の数字を除い[3,5]、[8]、N = 30、K = 5パイソン、からランダム#K番号を選択し(1、n)が与えられたexclude_list =ためのリスト
5(k)1から30までの乱数。 しかし除外リストで数字を選んではいけません。
nが潜在的に大きい可能性があるとします。
除外のための必要はありません、私が、その範囲は1つの番号でを保つ読ん
sample(set(range(1, n)) - set(exclude_numbers), k)
行うことができ、答えを得るために無作為標本ので
rand_numbers = sample(range(1, n), k)
をk個取得することは簡単です一度にメモリ。 私はそれが上記の2行にどのように影響するかについてはあまりよく分かりません。
最初の質問は、次のコードはすべてのn個の数値をメモリに入れますか、またはそれぞれの数値を一度に入れるのですか?
rand_numbers = sample(range(1, n), k)
第二の問題は、上記のコードは、実際にメモリに一度に一つの番号を置く場合、私は、除外リストの追加の制約と同様の操作を行うことができますか? sample
's docstringで
注:このコードも想定しているのではなく、その除外は範囲(n)のサブセットです。 –