2013-11-28 90 views
0

嘿有無論如何爲了簡化這個代碼,我所要做的就是創建和列出128個數字(2^7),並且每次循環時它會從中選擇18個清單和8次後,它應該涵蓋了所有的數字。Python列表中的隨機數(x.difference)

由於

x = set(range(0x00,0x81)) 
test_patterns0 = random.sample(x,16) 

z = x.difference(test_patterns0) 
test_patterns1 = random.sample(z,16) 

y = z.difference(test_patterns1) 
test_patterns2 = random.sample(y,16) 

q = y.difference(test_patterns2) 
test_patterns3 = random.sample(q,16) 

r = q.difference(test_patterns3) 
test_patterns4 = random.sample(r,16) 

s = r.difference(test_patterns4) 
test_patterns5 = random.sample(s,16) 

t = s.difference(test_patterns5) 
test_patterns6 = random.sample(t,16) 

p = t.difference(test_patterns6) 
test_patterns7 = random.sample(p,16) 
+0

組迭代不18,16號每次16 * 8 = 128 – user2871897

回答

1

洗牌唯一值的列表與random.shuffle(),然後通過它在16

+0

請你能給我看一個這樣的例子 – user2871897

+0

這裏有8個值被混洗並分成4個組。你可以概括你的具體問題...... >>> mylist = [1,2,3,4,5,6, 7,8]; >>> import random; >>> random.shuffle(mylist); >>> mylist; >>> mylist [0:4]; >>> mylist [4:8]; ' – pjs