这段代码应该生成一个表示问题的随机数。数字发生器生成1到10的数字。但如果数字不在数字列表"numlist"
中,它应该生成另一个数字。这应该是这样,程序不会问两次相同的问题。使用numlist.remove()
不适用于此目的。什么会起作用?或者,什么是更好的方法。如何解决这个迭代python代码并减少重复?
此外,我想知道如何使它在代码(循环?)中少重复。
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()
刚刚'numlist.remove(var)'怎么样? –
但也有q *() – drum
什么不行? – Volatility