最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Python中打亂列表順序random.shuffle()的使用方法

 更新時(shí)間:2019年11月11日 10:57:45   作者:chichu261  
這篇文章主要介紹了詳解Python中打亂列表順序random.shuffle()的使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

之前自己一直使用random中 randint生成隨機(jī)數(shù)以及使用for將列表中的數(shù)據(jù)遍歷一次。

現(xiàn)在有個(gè)需求需要將列表的次序打亂,或者也可以這樣理解:

【需求】將一個(gè)容器中的數(shù)據(jù)每次隨機(jī)逐個(gè)遍歷一遍。

random.shuffle()方法提供了完美的解決方案。

不會(huì)生成新的列表,只是將原列表的次序打亂

# shuffle()使用樣例
import random

x = [i for i in range(10)]
print(x)
random.shuffle(x)
print(x)

源碼及注釋(個(gè)人翻譯注釋)

def shuffle(self, x, random=None):
  """Shuffle list x in place, and return None.
  原位打亂列表,不生成新的列表。

  Optional argument random is a 0-argument
  function returning a random float in [0.0, 1.0); 
  if it is the default None, 
  the standard random.random will be used.
 可選參數(shù)random是一個(gè)從0到參數(shù)的函數(shù),返回[0.0,1.0)中的隨機(jī)浮點(diǎn);
 如果random是缺省值None,則將使用標(biāo)準(zhǔn)的random.random()。
  """

  if random is None:
    randbelow = self._randbelow
    for i in reversed(range(1, len(x))):
      # pick an element in x[:i+1] with which to exchange x[i]
      j = randbelow(i + 1)
      x[i], x[j] = x[j], x[i]
  else:
    _int = int
    for i in reversed(range(1, len(x))):
      # pick an element in x[:i+1] with which to exchange x[i]
      j = _int(random() * (i + 1))
      x[i], x[j] = x[j], x[i]

random 中其他的方法

class Random(_random.Random):

  ## -------------------- integer methods -------------------
  def randrange(self, start, stop=None, step=1, _int=int):

  def randint(self, a, b):

  def _randbelow(self, n, int=int, maxsize=1 << BPF, type=type,
          Method=_MethodType, BuiltinMethod=_BuiltinMethodType):

  ## -------------------- sequence methods -------------------
  def choice(self, seq):

  def shuffle(self, x, random=None):

  def sample(self, population, k):

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

  ## -------------------- uniform distribution -------------------
  def uniform(self, a, b):

  ## -------------------- triangular --------------------
  def triangular(self, low=0.0, high=1.0, mode=None):

  ## -------------------- normal distribution --------------------
  def normalvariate(self, mu, sigma):

  ## -------------------- lognormal distribution --------------------
  def lognormvariate(self, mu, sigma):

  ## -------------------- exponential distribution --------------------
  def expovariate(self, lambd):

  ## -------------------- von Mises distribution --------------------
  def vonmisesvariate(self, mu, kappa):

  ## -------------------- gamma distribution --------------------
  def gammavariate(self, alpha, beta):

  ## -------------------- Gauss (faster alternative) --------------------
  def gauss(self, mu, sigma):

  def betavariate(self, alpha, beta):

  ## -------------------- Pareto --------------------
  def paretovariate(self, alpha):

  ## -------------------- Weibull --------------------
  def weibullvariate(self, alpha, beta):

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python操作MySQL數(shù)據(jù)庫(kù)的三種方法總結(jié)

    Python操作MySQL數(shù)據(jù)庫(kù)的三種方法總結(jié)

    下面小編就為大家分享一篇Python操作MySQL數(shù)據(jù)庫(kù)的三種方法總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 如何在Windows環(huán)境下安裝PyMySQL(已安裝Anaconda)

    如何在Windows環(huán)境下安裝PyMySQL(已安裝Anaconda)

    這篇文章主要介紹了如何在Windows環(huán)境下安裝PyMySQL問題(已安裝Anaconda),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 用python制作詞云視頻詳解

    用python制作詞云視頻詳解

    這篇文章主要介紹了用python制作詞云視頻詳解,原理解釋清晰,代碼詳細(xì),用于練習(xí)很適合,需要的朋友可以參考下
    2021-04-04
  • python向圖片里添加文字

    python向圖片里添加文字

    這篇文章主要為大家詳細(xì)介紹了python向圖片里添加文字,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 利用python實(shí)現(xiàn)終身免費(fèi)的聽書工具

    利用python實(shí)現(xiàn)終身免費(fèi)的聽書工具

    本文通過實(shí)際案例,詳細(xì)介紹了作者如何利用Python庫(kù)實(shí)現(xiàn)文本轉(zhuǎn)語音的過程,從安裝庫(kù)到實(shí)際操作案例,都有詳細(xì)的說明,為讀者提供了一定的參考價(jià)值
    2024-03-03
  • python http接口自動(dòng)化腳本詳解

    python http接口自動(dòng)化腳本詳解

    這篇文章主要為大家詳細(xì)介紹了python http接口自動(dòng)化腳本,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Python獲取文本文件行數(shù)的三種常用方法

    Python獲取文本文件行數(shù)的三種常用方法

    在Python中獲取文件中的行數(shù)可以幫助我們更好地處理和分析數(shù)據(jù),這篇文章主要給大家介紹了關(guān)于Python獲取文本文件行數(shù)的三種常用方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • Python中表格插件Tabulate的用法小結(jié)

    Python中表格插件Tabulate的用法小結(jié)

    這篇文章主要介紹了Python中表格插件Tabulate的用法,Tabulate插件是一個(gè)功能強(qiáng)大、簡(jiǎn)單易用的數(shù)據(jù)可視化工具,它能夠滿足我們?cè)赑ython中進(jìn)行表格數(shù)據(jù)展示的各種需求,通過使用Tabulate插件,我們能夠輕松地生成美觀且易讀的表格,需要的朋友可以參考下
    2023-11-11
  • 淺談Python的垃圾回收機(jī)制

    淺談Python的垃圾回收機(jī)制

    本文雖然是轉(zhuǎn)載的,但是是真的好的一篇非常透徹的對(duì)Python垃圾回收機(jī)制的講解!!!這里推薦給大家
    2016-12-12
  • 淺談python 類方法/靜態(tài)方法

    淺談python 類方法/靜態(tài)方法

    這篇文章主要介紹了python 類方法/靜態(tài)方法的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-09-09

最新評(píng)論

宁城县| 休宁县| 宁河县| 溧阳市| 斗六市| 临澧县| 察隅县| 阿拉善左旗| 崇信县| 渭南市| 金塔县| 佳木斯市| 鄂托克前旗| 凯里市| 太仓市| 屯留县| 河东区| 手机| 唐河县| 北辰区| 望江县| 镇安县| 江北区| 玉门市| 太谷县| 响水县| 安多县| 聂荣县| 正定县| 宁夏| 杭锦后旗| 万年县| 浦城县| 文登市| 陆川县| 淅川县| 额济纳旗| 鄂托克前旗| 丹凤县| 碌曲县| 横峰县|