2013-10-24 38 views
0

我希望我的輸出是在增加的順序,如:強力球數發生器:

你的數字:3 12 14 26 47強力球:2個
你的數字:1 4 31 34 51強力球:17
你號碼:10 12 49 50 53強力球:35

但我的代碼給我這樣的事情:

Ofical樂透數發生器
多少組數字? 5個
你的數字:41 29 13 43 15強力球:29個
你的數字:44 4 18 47 51強力球:15
你號:24 7 39 28 47強力球:19個
你的數字:39 46 18 23 19強力球:41個
你的號碼:49 21 47 37 1強力球:8

import random 
print "Ofical Powerball number generator" 
x = int(raw_input("How many sets of numbers? ")) 
z = range(1,42) 

for n in range(x): 
    z1 = random.choice(z) 
    i = random.sample(range(1,53), 5) 
    q = i[0] 
    w = i[1] 
    e = i[2] 
    r = i[3] 
    t = i[4] 
    print "Your numbers: " + str(q), str(w), str(e), str(r), str(t) + " Powerball: "+ str(z1) 

我如何獲得的最後一行在我的代碼的順序來顯示數字?

+0

通過在打印出來之前對變量進行排序。就個人而言,我會使用[內置函數](http://docs.python.org/2/library/functions.html#sorted)。 –

回答

4

您可以將預分配排序,以i

i = sorted(random.sample(range(1, 53), 5)) 
+0

謝謝!那工作。我很簡單。 – Shandeep

1
print 'Your numbers: ' + str(sorted(random.sample(range(1,53), 5))) + ' Powerball: ' + str(random.choice(z)) 
0

我在隨機種子添加到每一平局讓別人運行只是梅森旋轉算法不太可能用相同的選秀權結束。

import random 
print "Powerball number generator" 
x = int(raw_input("How many sets of numbers? ")) 

for i in range(x): 
    white = range(1, 70) 
    n = [None] * 5 
    for j in range(len(n)): 
    random.SystemRandom() 
    n[j] = random.sample(white, 1).pop() 
    white.remove(n[j]) 

    n.sort() 
    random.SystemRandom() 
    powerball = random.choice(range(1, 27)) 
    print("Your numbers: "), 
    for j in range(5): 
    print(str(n[j]).rjust(2) + " "), 
    print("\tPowerball: "+ str(powerball))