python隨機抽取
發布時間: 2023-06-29 05:26:43
㈠ 如何用python編寫一個從隨機數表1~100中抽取三個樣本的隨機數程序
#導入隨機數模塊
import random
#定義一個空的數組,用作取樣表
reList = []
#為取樣表賦值,1~100
for i in range(1,101):
reList.append(i)
#使用sample方法,取3個隨機數
res = random.sample(reList,k=3)
print("三個隨機數是:{}".format(res))
㈡ python怎麼隨機取列表的值
第一步:
我分析如果從一堆數里隨機抽取幾個,並且按原來的順序輸出的話,那麼至少要隨機兩次才能完成,第一次隨機的值是確定隨機幾個數,第二次隨機是確定隨機的值。
第二步:
隨機抽取幾個可以用random.randint(1,n)這個函數來實現,這個n代表所要隨機列表的長度。
第三步:
上一步出來一個數決定此次隨機出幾個值出來,現在假定是n,再次隨機就是從列表裡隨機抽取n個值這個可以用random.sample(dict,n)這個方法實現,這個函數可以傳入一個字典,和一個數字返回一個列表。
第四步:
得到的結果需要按原來的順序輸出,那麼存儲就需要考慮用dict了,因為字典的k-v特性可以實現找到原來的順序,我具體的實現如下:
importrandom
#random_number(a)函數的功能傳入一個數,返回1到這個數的隨機數
defrandom_number(a):
returnrandom.randint(1,a)
#print(random_number(4))
#random_list(a,b)函數的功能,傳入一個字典a,和一個數值b,
#1<=b<=a的長度,返回一個擁有b的個數值是a中的key值的list
defrandom_list(a,b):
returnrandom.sample(list(a),b)
a={1:'a',2:'j',3:'g',4:'h',5:'k',6:'i',7:'l',8:'f',9:'v',10:'b',11:2,12:5,13:'x'}
b=len(a)
#print(random_list(a,b))
#random_dictvalue函數的功能,傳入一個字典a和一個列表b,返回以b為key,a中對應的value的值
defrandom_dictvalue(a,b):
b.sort()
foriinb:
print(a.get(i),end='')
print(random_dictvalue(a,random_list(a,random_number(b))))
#result
>>>================================RESTART================================
>>>
afNone
>>>================================RESTART================================
>>>
giNone
>>>================================RESTART================================
>>>
ajhlvb25xNone
㈢ Python:在列表中隨機抽取一組無重復元素
需求:從列表中,隨機抽取" 一組 "無重復元素,返回結果到一個新的列表中。
包:random
函數:random.sample(list, num)
參數說明:list是待抽取的列表,num是抽取的個數;返回值為一個新的列表。
使用如下:
熱點內容