python中怎么随机选取多个不同的数

python 2.7版本要去从1-30中选取出几个不同的数注意:要不同的
2025-03-24 08:02:04
推荐回答(3个)
回答(1):

python实现随机一柱双色球:

  1. 定义一个列表,列表red_ball=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33]

  2. 打乱red_ball列表值的顺序

  3. 提取打乱后的前6个值,赋值给新列表redB

  4. 从1-16随机产生一个整数,赋值给blueB,做为篮球

  5. 输出redB,blueB

import random

red_ball = [] #定义红球列表
red_ball = list(range(1,34))#给红球列表赋值
random.shuffle(red_ball)#打乱列表顺序
redB = []
blueB = []
for i in range(6):
    redB.append(red_ball[i]) #从列表red_ball中提取打乱顺序后的前6个值,放到新列表redB中

else:
    redB.sort()
    blueB.append(random.randint(1,16))
    print(redB,blueB)

# [9, 13, 17, 22, 23, 28] [8]

回答(2):

这样你看行不?
import random
l=[]
n=input('你想选几次?')
for i in range(n):
x=random.randint(1,30)
if x in l:
continue #这样你就不会选到想同的数了!
else:
l.append(x)
print l
重新改进一下:

import random
l=[]
n=input('你想选几个?')
while n>30 or n<=0:
print '你这不是耍我吗!'
n=input('请重新输入一个1到30的数:')

while n!=len(l):
x=random.randint(1,30)
if x in l:
continue
else:
l.append(x)
print l, len(l)

回答(3):

import random
select_list = range(1,31)
random.sample(select_list,n)#n是你想随机想选出的个数