Eu tenho uma lista de objectos e quero baralhá-los. Eu pensei que poderia usar o método `random.shuffle', mas isso parece falhar quando a lista é de objetos. Existe algum método para baralhar objectos ou outra forma de contornar isto?
import random
class A:
foo = "bar"
a1 = a()
a2 = a()
b = [a1, a2]
print(random.shuffle(b))
Isto vai falhar.
random.shuffle
deve funcionar. Aqui's um exemplo, onde os objetos são listas:
from random import shuffle
x = [[i] for i in range(10)]
shuffle(x)
# print(x) gives [[9], [2], [7], [0], [4], [5], [3], [1], [8], [6]]
# of course your results will vary
Note que o shuffle funciona no lugar, e retorna Nenhum.