久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

基于Python中random.sample()的替代方案

瀏覽:117日期:2022-07-24 16:49:04

python中random.sample()方法可以隨機(jī)地從指定列表中提取出N個不同的元素,但在實(shí)踐中發(fā)現(xiàn),當(dāng)N的值比較大的時候,該方法執(zhí)行速度很慢,如:

numpy random模塊中的choice方法可以有效提升隨機(jī)提取的效率:

基于Python中random.sample()的替代方案

需要注意的是,需要置replace為False,即抽取的元素不能重復(fù),默認(rèn)為True。

基于Python中random.sample()的替代方案

補(bǔ)充知識:Python: random模塊的隨即取樣函數(shù):choice(),choices(),sample()

choice(seq): 從seq序列中(可以是列表,元組,字符串)隨機(jī)取一個元素返回

choices(population, weights=None, *, cum_weights=None, k=1):

從population中進(jìn)行K次隨機(jī)選取,每次選取一個元素(注意會出現(xiàn)同一個元素多次被選中的情況),weights是相對權(quán)重值,population中有幾個元素就要有相對應(yīng)的weights值,cum_weights是累加權(quán)重值,例如,相對權(quán)重〔10, 5, 30,5〕相當(dāng)于累積權(quán)重〔10, 15, 45,50〕。

在內(nèi)部,在進(jìn)行選擇之前,相對權(quán)重被轉(zhuǎn)換為累積權(quán)重,因此提供累積權(quán)重節(jié)省了工作。返回一個列表。

sample(population, k)從population中取樣,一次取k個,返回一個k長的列表。

可以像這樣使用sample(range(10000000), k=60)

以上這篇基于Python中random.sample()的替代方案就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 论坛| 桂平市| 友谊县| 广西| 景东| 凤翔县| 德保县| 崇明县| 庆阳市| 兴业县| 黔南| 金坛市| 云安县| 怀仁县| 荔浦县| 共和县| 遂昌县| 岑巩县| 卢龙县| 封丘县| 甘谷县| 鄂尔多斯市| 河东区| 仪征市| 靖安县| 云浮市| 原阳县| 德兴市| 镇江市| 阿荣旗| 土默特左旗| 铜山县| 红桥区| 海口市| 防城港市| 云和县| 雷波县| 广东省| 蒙城县| 普安县| 上饶市|