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

Python編程實現(xiàn)生成特定范圍內(nèi)不重復(fù)多個隨機數(shù)的2種方法

 更新時間:2017年04月14日 14:56:30   作者:捂汗縣長  
這篇文章主要介紹了Python編程實現(xiàn)生成特定范圍內(nèi)不重復(fù)多個隨機數(shù)的2種方法,涉及Python基于random生成隨機數(shù)的常見操作技巧,需要的朋友可以參考下

本文實例講述了Python編程實現(xiàn)生成特定范圍內(nèi)不重復(fù)多個隨機數(shù)的2種方法。分享給大家供大家參考,具體如下:

在近期進行的一個實驗中,需要將數(shù)據(jù)按一定比例隨機分割為兩個部分。這一問題的核心其實就是產(chǎn)生不重復(fù)隨機數(shù)的問題。首先想到的遞歸的方法,然后才發(fā)現(xiàn)Python中居然已經(jīng)提供了此方法的函數(shù),可以直接使用。具體代碼如下:

#生成某區(qū)間內(nèi)不重復(fù)的N個隨機數(shù)的方法
import random;
#1、利用遞歸生成
resultList=[];#用于存放結(jié)果的List
A=1; #最小隨機數(shù)
B=10 #最大隨機數(shù)
COUNT=10
#生成隨機數(shù)的遞歸數(shù)學(xué),參數(shù)counter表示當(dāng)前準(zhǔn)備要生成的第幾個有效隨機數(shù)
def generateRand(counter):
  tempInt=random.randint(A,B); # 生成一個范圍內(nèi)的臨時隨機數(shù),
  if(counter<=COUNT): # 先看隨機數(shù)的總個數(shù)是不是夠了,如果不夠
    if(tempInt not in resultList): # 再檢查當(dāng)前已經(jīng)生成的臨時隨機數(shù)是不是已經(jīng)存在,如果不存在
      resultList.append(tempInt); #則將其追加到結(jié)果List中
      counter+=1;# 然后將表示有效結(jié)果的個數(shù)加1. 請注意這里,如果臨時隨機數(shù)已經(jīng)存在,則此if不成立,那么將直接執(zhí)行16行,counter不用再加1
    generateRand(counter); # 不管上面的if是否成立,都要遞歸。如果上面的臨時隨機數(shù)有效,則這里的conter會加1,如果上面的臨時隨機數(shù)已經(jīng)存在了,則需要重新再生成一次隨機數(shù),counter不能變化
generateRand(1);#調(diào)用遞歸函數(shù),并給當(dāng)前要生成的有效隨機數(shù)的個序號置為1,因為要從第一個開始嘛
print(resultList)# 打印結(jié)果
#2、利用Python中的randomw.sample()函數(shù)實現(xiàn)
resultList=random.sample(range(A,B+1),COUNT); # sample(x,y)函數(shù)的作用是從序列x中,隨機選擇y個不重復(fù)的元素。上面的方法寫了那么多,其實Python一句話就完成了。
print(resultList)# 打印結(jié)果

結(jié)果:

PS:這里再為大家提供兩款相關(guān)在線工具供大家參考使用:

在線隨機數(shù)字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu

高強度密碼生成器:
http://tools.jb51.net/password/CreateStrongPassword

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

  • Pandas中DataFrame數(shù)據(jù)刪除詳情

    Pandas中DataFrame數(shù)據(jù)刪除詳情

    這篇文章主要以介紹的是Pandas中DataFrame的數(shù)據(jù)刪除的相關(guān)資料,主要使用drop、del方式,需要的朋友可以參考下面文章的具體內(nèi)容
    2021-09-09
  • python pickle 和 shelve模塊的用法

    python pickle 和 shelve模塊的用法

    pickle和shelve模塊都可以把python對象存儲到文件中,下面來看看它們的用法吧
    2013-09-09
  • Django單元測試中Fixtures的使用方法

    Django單元測試中Fixtures的使用方法

    這篇文章主要介紹了Django單元測試中Fixtures用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • pytorch中的model=model.to(device)使用說明

    pytorch中的model=model.to(device)使用說明

    這篇文章主要介紹了pytorch中的model=model.to(device)使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python實現(xiàn)設(shè)置windows桌面壁紙代碼分享

    Python實現(xiàn)設(shè)置windows桌面壁紙代碼分享

    這篇文章主要介紹了Python實現(xiàn)設(shè)置windows桌面壁紙,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-03-03
  • 利用Python自動化識別與刪除Excel表格空白行和列

    利用Python自動化識別與刪除Excel表格空白行和列

    在處理Excel數(shù)據(jù)時,經(jīng)常會遇到含有空白行和空白列的情況,本文將介紹如何利用Python來自動化識別并刪除Excel文件中的空白行和列,從而確保數(shù)據(jù)集的整潔性,為后續(xù)的數(shù)據(jù)分析工作奠定堅實的基礎(chǔ),需要的朋友可以參考下
    2024-05-05
  • 利用Python程序讀取Excel創(chuàng)建折線圖

    利用Python程序讀取Excel創(chuàng)建折線圖

    這篇文章主要介紹了利用Python程序讀取Excel創(chuàng)建折線圖,文章通過圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Jupyter Notebook打開任意文件夾操作

    Jupyter Notebook打開任意文件夾操作

    這篇文章主要介紹了Jupyter Notebook打開任意文件夾操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python判斷一個list中是否包含另一個list全部元素的方法分析

    Python判斷一個list中是否包含另一個list全部元素的方法分析

    這篇文章主要介紹了Python判斷一個list中是否包含另一個list全部元素的方法,結(jié)合實例形式對比分析了Python針對列表list元素包含關(guān)系的相關(guān)轉(zhuǎn)換、判斷操作技巧,需要的朋友可以參考下
    2018-12-12
  • 使用pytorch時所遇到的一些問題總結(jié)

    使用pytorch時所遇到的一些問題總結(jié)

    這篇文章主要介紹了使用pytorch時所遇到的一些問題總結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05

最新評論