2016-12-04 6 views
-2

私は8つの要素のリストが必要です。そのpythonがその要素をリスト内でランダムにインポートしたいと考えています。しかし、私はリストの要素のそれぞれが必要です。このように:私はランダムに使用すると、pythonがどのように各要素を印刷するのですか?

私はリストに0〜4の番号が必要ですが、私が書く場合:

s = [] 
for i in range(8): 
    s.append(random.randint(0,4)) 
print("s:", s) 

のpythonは、少なくとも一度は私の番号をそれぞれ印刷されません。 Pythonは私のようにそれを印刷します:

s = [1,0,2,2,1,0,1,3] - このリストには4がありませんが、少なくとも5つの数字はすべてリストに少なくとも1つ必要です。

私を助けてください。

+0

コードは*ランダム*です。あなたは四人、四人だけ、またはその中間にいる人を得ることができます。 * "5つの数字を少なくとも1回はリストに入れたい" * - それはあなたが書いたものではありません。それが唯一の制約ですか? – jonrsharpe

+0

あなたは何をしようとしているのかをより明確にする必要があります。 – Hampus

+0

私は0から4までの要素のランダムなリスト(8)が必要です。リスト内の各数字は、少なくとも1回です。 – Bababo

答えて

0

少なくとも1つの要素0,1,2,3,4からなる8つの項目のリストを作成したい場合、本当に必要なのは[0,1,2、 3,4]と3つのランダムな要素がすべてランダムな順番でランダムに表示されます。

import random 

# start a list with one each of the desired elements 
s = [0,1,2,3,4] 

# add three more elements 
for i in range(3): 
    s.append(random.randint(0,4)) 
    # randomize the order of the elements in the list 
    random.shuffle(s) 
print("s:", s) 
+0

それは私が望んでいたものです。ありがとうございます! – Bababo

関連する問題