1 random.choice
python random模塊的choice方法隨機選擇某個元素
foo = ['a', 'b', 'c', 'd', 'e'] from random import choice print choice(foo)
2 random.sample
使用python random模塊的sample函數從列表中隨機選擇一組元素
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] slice = random.sample(list, 5) #從list中隨機獲取5個元素,作為一個片斷返回 print slice print list #原有序列并沒有改變。
3 python帶權重的隨機取值
import random def random_weight(weight_data): total = sum(weight_data.values()) # 權重求和 ra = random.uniform(0, total) # 在0與權重和之前獲取一個隨機數 curr_sum = 0 ret = None keys = weight_data.iterkeys() # 使用Python2.x中的iterkeys # keys = weight_data.keys() # 使用Python3.x中的keys for k in keys: curr_sum += weight_data[k] # 在遍歷中,累加當前權重值 if ra <= curr_sum: # 當隨機數<=當前權重和時,返回權重key ret = k break return ret weight_data = {'a': 10, 'b': 15, 'c': 50} random_weight(weight_data)
以上這篇在python帶權重的列表中隨機取值的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。