欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何利用Python隨機(jī)從list中挑選一個(gè)元素

 更新時(shí)間:2022年05月24日 17:06:02   作者:sgzqc  
這篇文章主要介紹了如何利用Python隨機(jī)從list中挑選一個(gè)元素,文章通過研究從列表中選擇隨機(jī)元素的不同實(shí)現(xiàn)方法展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下

1. 引言

在本文中,我們將研究從列表中選擇隨機(jī)元素的不同實(shí)現(xiàn)方法。在日常項(xiàng)目中,我們經(jīng)常會(huì)遇到這種情形,比如隨機(jī)從多種數(shù)據(jù)增強(qiáng)策略中選擇一種或幾種來提升訓(xùn)練數(shù)據(jù)的多樣性。

2. 舉個(gè)栗子

為了方便示例,這里我們假設(shè)有一個(gè)包含多個(gè)水果英文名的列表,并且我們需要從中選擇一種隨機(jī)水果進(jìn)行輸出。

水果名稱列表如下所示:

fruit_name_list = [
'apple',
'orange',
'banana',
'pear',
'watermelon'
]

3. 使用Random庫(kù)

random 庫(kù)是一個(gè) python的內(nèi)置庫(kù),因此我們不需要重新安裝它,可以方便地直接導(dǎo)入。這里我們將研究使用該庫(kù)從列表中選擇隨機(jī)元素的 3 種不同方法。

3.1 隨機(jī)下標(biāo)

函數(shù)??random.randrange(num_items)??用于返回介于區(qū)間0到??num_items-1??之間的一個(gè)隨機(jī)數(shù),如果我們得到一個(gè)列表的隨機(jī)下標(biāo),進(jìn)而我們就可以方便的得到該列表中的一個(gè)隨機(jī)元素。

樣例代碼如下:

import random
num_items = len(fruit_name_list)
random_index = random.randrange(num_items)
winner = fruit_name_list[random_index]
print(winner)

輸出如下:

orange

3.2 隨機(jī)選擇單個(gè)元素

函數(shù)??random.choice?? 將列表作為輸入?yún)?shù),并從列表中返回一個(gè)隨機(jī)元素。在上述的例子中,我們可以直接傳遞 列表??fruit_name_list??作為該函數(shù)的參數(shù)。

樣例代碼如下:

winner = random.choice(fruit_name_list)
print(winner)

輸出如下:

watermelon

3.3 隨機(jī)選擇多個(gè)元素

函數(shù)??random.sample??功能類似于函數(shù)??random.choice??,主要區(qū)別在于我們可以指定所需的隨機(jī)元素的數(shù)量。在下面的代碼樣例中,我們可以得到兩個(gè)隨機(jī)的水果英文名字。 ??random.sample?? 返回值為一個(gè)列表。

樣例代碼如下:

winners = random.sample(fruit_name_list,2)
print(winners)

輸出如下:

['banana', 'watermelon']

4. 使用Secrets庫(kù)

??Secrets?? 庫(kù)優(yōu)于 Random 庫(kù),因?yàn)樗踩?。與 random 庫(kù)一樣,它也是一個(gè)內(nèi)置的 python 庫(kù),我們不必安裝任何其他依賴項(xiàng)。但是,如果我們使用的是低于3.6 的Python版本,則必須使用pip安裝該模塊。

4.1 隨機(jī)下標(biāo)

函數(shù)??secrets.randbelow??的功能類似于??random.randrange??。使用該函數(shù)我們可以得到一個(gè)介于 0 和 ??num_items - 1?? 之間的隨機(jī)索引,進(jìn)而使用該索引來方便地訪問我們的水果英文名列表中的元素。

樣例代碼如下:

import secrets
num_items = len(fruit_name_list)
random_index = secrets.randbelow(num_items)
winner = fruit_name_list[random_index]
print(winner)

輸出如下:

watermelon

4.2 隨機(jī)選擇單個(gè)元素

函數(shù)??secrets.choice??功能類似于函數(shù)??random.choice??,該函數(shù)將列表作為輸入?yún)?shù),并從該列表中返回一個(gè)隨機(jī)元素。

樣例代碼如下:

winner = secrets.choice(fruit_name_list)
print(winner)

輸出如下:

apple

4.3 隨機(jī)選擇多個(gè)元素

函數(shù)??secrets.SystemRandom().sample()??功能類似于 ??random.sample()??,該函數(shù)接受輸入列表和返回元素個(gè)數(shù)作為輸入?yún)?shù),同時(shí)該函數(shù)返回一個(gè)挑選出的隨機(jī)元素的列表。

樣例代碼如下:

winners = secrets.SystemRandom().sample(fruit_name_list,2)
print(winners)

輸出如下:

['watermelon', 'orange']

5. 總結(jié)

本文介紹了分別使用Random庫(kù)以及使用Secrets庫(kù)來從列表中隨機(jī)挑選一個(gè)或多個(gè)元素的不同實(shí)現(xiàn)方法,并均給出了代碼示例。

到此這篇關(guān)于如何利用Python隨機(jī)從list中挑選一個(gè)元素的文章就介紹到這了,更多相關(guān) Python從list中挑選元素內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python爬蟲Xpath定位數(shù)據(jù)的兩種方法

    Python爬蟲Xpath定位數(shù)據(jù)的兩種方法

    這篇文章主要介紹了Python爬蟲Xpath定位數(shù)據(jù)的方法,第一種方法直接右鍵,將文章路徑復(fù)制下來點(diǎn)擊Copy?full?Xpath,方法二使用@制定標(biāo)簽屬性,搜索指定位置,每種方法給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • Pytorch數(shù)據(jù)讀取之Dataset和DataLoader知識(shí)總結(jié)

    Pytorch數(shù)據(jù)讀取之Dataset和DataLoader知識(shí)總結(jié)

    Dataset和DataLoader都是Pytorch里面讀取數(shù)據(jù)的工具.現(xiàn)在對(duì)這兩種工具做一個(gè)概括和總結(jié),對(duì)正在學(xué)習(xí)Pytorch的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • python中p-value的實(shí)現(xiàn)方式

    python中p-value的實(shí)現(xiàn)方式

    今天小編就為大家分享一篇python中p-value的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 使用python把xmind轉(zhuǎn)換成excel測(cè)試用例的實(shí)現(xiàn)代碼

    使用python把xmind轉(zhuǎn)換成excel測(cè)試用例的實(shí)現(xiàn)代碼

    這篇文章主要介紹了使用python把xmind轉(zhuǎn)換成excel測(cè)試用例的實(shí)現(xiàn)代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 詳解Python循環(huán)作用域與閉包

    詳解Python循環(huán)作用域與閉包

    這篇文章主要介紹了Python循環(huán)作用域與閉包,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • python創(chuàng)建Flask Talisman應(yīng)用程序的步驟詳解

    python創(chuàng)建Flask Talisman應(yīng)用程序的步驟詳解

    Flask是一個(gè)功能強(qiáng)大的Web框架,主要用于使用Python語(yǔ)言開發(fā)有趣的Web應(yīng)用程序,Talisman基本上是一個(gè)Flask擴(kuò)展,用于添加HTTP安全標(biāo)頭我們的Flask應(yīng)用程序易于實(shí)施,本文就給大家講講帶Talisman的Flask安全性,需要的朋友可以參考下
    2023-09-09
  • Python中的時(shí)序分析和可視化案例詳解

    Python中的時(shí)序分析和可視化案例詳解

    每個(gè)數(shù)據(jù)集都有自己的特征,我們使用它們的特征作為特征來深入了解數(shù)據(jù),在本文中,我們將討論一種重要的數(shù)據(jù)集,即時(shí)間序列數(shù)據(jù),感興趣的可以了解下
    2024-02-02
  • django authenticate用戶身份認(rèn)證的項(xiàng)目實(shí)踐

    django authenticate用戶身份認(rèn)證的項(xiàng)目實(shí)踐

    Django的contrib.auth模塊中的authenticate()函數(shù)用于對(duì)用戶的憑據(jù)進(jìn)行身份驗(yàn)證,本文就來介紹一下django authenticate用戶身份認(rèn)證的使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • python實(shí)現(xiàn)數(shù)據(jù)圖表

    python實(shí)現(xiàn)數(shù)據(jù)圖表

    plotly是現(xiàn)代平臺(tái)的敏捷商業(yè)智能和數(shù)據(jù)科學(xué)庫(kù),它作為一款開源的繪圖庫(kù),可以應(yīng)用于Python、R、MATLAB、Excel、JavaScript和jupyter等多種語(yǔ)言,主要使用的js進(jìn)行圖形繪制,實(shí)現(xiàn)過程中主要就是調(diào)用plotly的函數(shù)接口,底層實(shí)現(xiàn)完全被隱藏,便于初學(xué)者的掌握。
    2017-07-07
  • 淺析Python實(shí)現(xiàn)DFA算法

    淺析Python實(shí)現(xiàn)DFA算法

    DFA全稱為Deterministic Finite Automaton,即確定有窮自動(dòng)機(jī)。特征:有一個(gè)有限狀態(tài)集合和一些從一個(gè)狀態(tài)通向另一個(gè)狀態(tài)的邊,每條邊標(biāo)記有一個(gè)符號(hào),其中一個(gè)狀態(tài)是初態(tài),某些狀態(tài)是終態(tài)。不同于不確定的有限自動(dòng)機(jī),DFA中不會(huì)有從同一狀態(tài)出發(fā)的兩條邊標(biāo)志有相同的符號(hào)
    2021-06-06

最新評(píng)論