Я пытаюсь создать 5-ти барабанный игровой автомат. Мне было интересно, есть ли более быстрый способ использования моей функции только один раз вместо нескольких раз, чтобы вернуть выбранные значения для каждого барабана. Каждый барабан имеет 3 символа. функция перемешивает массив, затем должна случайным образом выбрать элемент и удалить его из массива, чтобы одни и те же символы не появлялись на одном барабане дважды. Я использую код ниже 5 раз (для каждого барабана), но мне было интересно, могу ли я просто использовать одну функцию и сбросить ее для каждого барабана, как только 3 элемента были выбраны и удалены.
def my_function():
symbolsreel1 = ['Symbol1', 'Symbol2', 'Symbol3', 'Symbol4', 'Symbol5', '
Symbol6', 'Symbol7', 'Symbol8', 'Symbol9',
'Symbol10', 'Symbol11', 'Symbol12',]
random.shuffle(symbolsreel1)
symbolItem = random.choice(symbolsreel1)
symbolsreel1.remove(symbolItem)
return(symbolItem)
a1 = my_function()
b1 = my_function()
c1 = my_function()
def my_function():
symbolsreel2 = ['Symbol1', 'Symbol2', 'Symbol3', 'Symbol4', 'Symbol5',
'Symbol6', 'Symbol7', 'Symbol8', 'Symbol9',
'Symbol10', 'Symbol11', 'Symbol12',]
random.shuffle(symbolsreel2)
symbolItem = random.choice(symbolsreel2)
symbolsreel2.remove(symbolItem)
return(symbolItem)
a2 = my_function()
b2 = my_function()
c2 = my_function()
Я делаю это 5 раз и печатаю следующее
print (a1, "\t", a2, "\t", a3, "\t", a4, "\t", a5)
print (b1, "\t", b2, "\t", b3, "\t", b4, "\t", b5)
print (c1, "\t", c2, "\t", c3, "\t", c4, "\t", c5)