0

我希望我的输出按递增顺序排列,例如:

您的号码:3 12 14 26 47 强力球:2
您的号码:1 4 31 34 51 强力球:17
您的号码:10 12 49 50 53 强力球:35

但是我的代码给了我这样的东西:

官方强力球号码生成器
有多少组号码?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)

如何获取代码中的最后一行以按顺序显示数字?

4

3 回答 3

4

您可以将作业预排序为i

i = sorted(random.sample(range(1, 53), 5))
于 2013-10-24T22:08:48.330 回答
1
print 'Your numbers: ' + str(sorted(random.sample(range(1,53), 5))) + ' Powerball: ' + str(random.choice(z))
于 2013-10-25T00:10:03.703 回答
0

我为每次抽签添加了随机播种,以便其他只运行 MersenneTwister 的人不太可能最终获得相同的选秀权。

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) )
于 2016-01-08T06:34:20.597 回答