回覆列表
  • 1 # 一根筋的陳小呆

    一、random模組簡介

    Python標準庫中的random函式,可以生成隨機浮點數、整數、字串,甚至幫助你隨機選擇列表序列中的一個元素,打亂一組資料等。

    二、random模組重要函式

    1 )、random() 返回0<=n<1之間的隨機實數n;

    2 )、choice(seq) 從序列seq中返回隨機的元素;

    import random a = random.choice([1, 2, 3, 4]) print(a)

    3 )、getrandbits(n) 以長整型形式返回n個隨機位;

    4 )、shuffle(seq[, random]) 原地指定seq序列;

    5 )、sample(seq, n) 從序列seq中選擇n個隨機且獨立的元素;

    三、random模組方法說明

    random.random()函式是這個模組中最常用的方法了,它會生成一個隨機的浮點數,範圍是在0.0~1.0之間。

    random.uniform()正好彌補了上面函式的不足,它可以設定浮點數的範圍,一個是上限,一個是下限。

    random.randint()隨機生一個整數int型別,可以指定這個整數的範圍,同樣有上限和下限值,python random.randint。

    random.choice()可以從任何序列,比如list列表中,選取一個隨機的元素返回,可以用於字串、列表、元組等。

    random.shuffle()如果你想將一個序列中的元素,隨機打亂的話可以用這個函式方法。

    random.sample()可以從指定的序列中,隨機的擷取指定長度的片斷,不作原地修改。

    四、需要匯入random模組

    1、random.random

    random.random()用於生成一個0到1的隨機符小數: 0 <= n < 1.0

    >>> random.random() # Random float x,

    2、random.uniform

    random.uniform的函式原型為:random.uniform(a, b),用於生成一個指定範圍內的隨機符點數,兩個引數其中一個是上限,一個是下限。如果a > b,則生成的隨機數n: a <= n <= b。如果 a <b, 則 b <= n <= a。

    >>> random.uniform(1, 10) # Random float x,

    3、random.randint

    random.randint()的函式原型為:random.randint(a, b),用於生成一個指定範圍內的整數。其中引數a是下限,引數b是上限,生成的隨機數n: a <= n <= b

    >>> random.randint(10, 100)

    4、random.randrange

    random.randrange的函式原型為:random.randrange([start], stop[, step]),從指定範圍內,按指定基數遞增的集合中 獲取一個隨機數。如:random.randrange(10, 100, 2),結果相當於從[10, 12, 14, 16, ... 96, 98]序列中獲取一個隨機數。random.randrange(10, 100, 2)在結果上與 random.choice(range(10, 100, 2) 等效。

    隨機選取0到100間的偶數:

    >>> import random >>> random.randrange(0, 101, 2)

    5、random.choice

    random.choice從序列中獲取一個隨機元素。其函式原型為:random.choice(sequence)。引數sequence表示一個有序型別。這裡要說明 一下:sequence在python不是一種特定的型別,而是泛指一系列的型別。list, tuple, 字串都屬於sequence。有關sequence可以檢視python手冊資料模型這一章。

    >>> random.choice("abcdefg&#%^*f") #隨機字元 "d"

    >>> random.choice ( [‘apple’, ‘pear’, ‘peach’, ‘orange’, ‘lemon’] ) #隨機選取字串:‘lemon’

    6、random.shuffle

    random.shuffle的函式原型為:random.shuffle(x[, random]),用於將一個列表中的元素打亂。如:

    p = ["Python", "is", "powerful", "simple", "and so on..."] random.shuffle(p) print p #結果(因為隨機,所以你的結果可能不一樣。) #["powerful", "simple", "is", "Python", "and so on..."] p = ["Python", "is", "powerful", "simple", "and so on..."]

    7、random.sample

    random.sample的函式原型為:random.sample(sequence, k),從指定序列中隨機獲取指定長度的片斷。sample函式不會修改原有序列。 如果k大於sequence元素個數的話會報錯。

  • 中秋節和大豐收的關聯?
  • 熟雞蛋返生孵出小雞,你信嗎?