我想問如何洗牌,也許在一個while循環,直到所有的名單是完全不同的(如數獨)?蟒蛇,洗牌,直到列表完全不同
#lists you want to shuffle
s1 = [1, 2, 3, 4]
s2 = [1, 2, 3, 4]
s3 = [1, 2, 3, 3]
s4 = [1, 2, 3, 4]
def mid_generator():
while True:
random.shuffle(s1)
random.shuffle(s2)
random.shuffle(s3)
random.shuffle(s4)
# if ... all lists are different...:
#break
return s1, s2, s3, s4
所以這個數字僅僅是一個在第i行第j列時間:
s1 = [3, 1, 2, 4]
s2 = [4, 2, 1, 3]
s3 = [2, 4, 3, 1]
s4 = [1, 3, 4, 2]
,如果我嘗試長if語句與如果s1 [0] = S2 [0] .. ..輸出是錯誤的。 也許你可以幫助我。
您是否試圖生成隨機[拉丁方塊](https://en.wikipedia.o RG /維基/ Latin_square)? [這似乎是一個難題](http://math.stackexchange.com/questions/63131/generate-random-latin-squares),如果你想統一。 – user2357112
不是直接。我想獲得不同的列表,如在數獨遊戲中。 –
數獨網格甚至更受限制,你的問題甚至沒有提及。你真的需要在你的問題中說出類似的東西。 – user2357112