このコード スニペットは、質問を表す乱数を生成することになっていました。ナンバ ジェネレータは 1 から 10 までの数字を生成します。ただし、その数字が数字のリストにない場合は、"numlist"
別の数字を生成することになっています。これは、プログラムが同じ質問を 2 回しないようにするためのものです。を使用numlist.remove()
しても、この目的には機能しませんでした。何が機能しますか?または、より良い方法は何ですか。
また、コードの繰り返し(ループ?)を少なくする方法も知りたいです。
def roll():
var = random.randint(1,10)
if var not in numlist:
roll()
elif var == 1:
numlist.remove(1)
q1()
elif var == 2:
numlist.remove(2)
q2()
elif var == 3:
numlist.remove(3)
q3()
elif var == 4:
numlist.remove(4)
q4()
elif var == 5:
numlist.remove(5)
q5()
elif var ==6:
numlist.remove(6)
q6()
elif var == 7:
numlist.remove(7)
q7()
elif var == 8:
numlist.remove(8)
q8()
elif var == 9:
numlist.remove(9)
q9()
elif var == 10:
numlist.remove(10)
q10()