在python帶權重的列表中隨機取值的方法

2022-09-27 10:39:09 字數 1056 閱讀 2988

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, 1程式設計客棧0]

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_www.cppcns.comsum += weight_data[k] # 在遍歷中,累加當前權重值

if ra <= curr_sum: # 當隨機數<=當前權重和時,返回權重key

程式設計客棧 re程式設計客棧t = k

break

return ret

weight_data =

random_weight(weqkkecmvight_data)

本文標題: 在python帶權重的列表中隨機取值的方法

本文位址:

python 獲取帶權重的隨機數

usr bin env python coding utf 8 import random def random weight weight data total sum weight data.values 權重求和 ra random.uniform 0,total 在0與權重和之前獲取乙個隨機...

python的列表操作 在Python中列表的操作

列表可以做什麼?假設你要建立乙個基於 go fish 的遊戲。如果你不知道 go fish 是什麼,就去網上查一下。要實現這個遊戲,你需要有乙個辦法,把 一摞紙牌 這一概念寫到python程式中。然後你要寫 python 去操作這紙牌,讓玩家覺得他是真的在玩紙牌。這個 一摞紙牌 的結構,被程式設計師...

python 在列表中,插入列表片段的方法

python 官方簡易文件篇 2 資料結構 下面的演示中會多次用到切片,並且使用list1 len list1 這個式子中,意指從索引位置開始,直到最後。但索引位置是正好是最後一位的下一位,而我嘗試使用更大的數字,仍能成立,所以在切片中的切片數可以是任意正數 0 負數的!但這個切片負值又給我們帶來了...