random

python模塊之random

1、random

python中的random模塊用于生成隨機數。下面介紹常用的一些函數。

random:官方文檔是最好的模塊表達說明。

dir(random):查看random模塊下面有哪些函數。

>>> import random
>>> dir(random)
['BPF', 'LOG4', 'NV_MAGICCONST', 'RECIP_BPF', 'Random', 'SG_MAGICCONST', 'SystemRandom', 'TWOPI', '_Builti
nMethodType', '_MethodType', '_Sequence', '_Set', '__all__', '__builtins__', '__cached__', '__doc__', '__f
ile__', '__loader__', '__name__', '__package__', '__spec__', '_acos', '_bisect', '_ceil', '_cos', '_e', '_
exp', '_inst', '_itertools', '_log', '_pi', '_random', '_sha512', '_sin', '_sqrt', '_test', '_test_generat
or', '_urandom', '_warn', 'betavariate', 'choice', 'choices', 'expovariate', 'gammavariate', 'gauss', 'get
randbits', 'getstate', 'lognormvariate', 'normalvariate', 'paretovariate', 'randint', 'random', 'randrange
', 'sample', 'seed', 'setstate', 'shuffle', 'triangular', 'uniform', 'vonmisesvariate', 'weibullvariate']

常用函數有:

1.1 產生一個隨機數(元素)

random.random():用于產生一個0到1 的隨機浮點數,0<=n<1。

>>> random.random()
0.052603181609407135                
>>> round(random.random(), 2)
0.13                                # 四舍五入取兩位小數

random.uniform(a, b):用于生成一個指定范圍內的隨機符點數,兩個參數其中一個是上限,一個是下限。如果a>b,則生成的隨機數n:a<=n<=b。如果a<b,則 b<=n<=a。

>>> random.uniform(10, 20)
18.269306458836333
>>> random.uniform(20, 10)
10.804263239022113

random.randint(a, b):用于生成一個指定范圍內的整數。其中參數a是下限,參數b是上限,a、b不可顛倒、生成的隨機數:a<=n<=b。

>>> random.randint(10, 20)
13
>>> random.randint(20, 10)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\software\python\lib\random.py", line 220, in randint
    return self.randrange(a, b+1)
  File "C:\software\python\lib\random.py", line 198, in randrange
    raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
ValueError: empty range for randrange() (20,11, -9)

random.randrange([start], stop[, step]):從指定范圍內,按指定基數遞增的集合中獲取一個隨機數。

>>> random.randrange(10, 20, 2)
14                                  # 即從[10, 12, 14, 16, …18]序列中獲取一個隨機數。在結果上與 random.choice(range(10, 100, 2)等效。

random.choice(sequence):從指定序列隨機獲取元素。參數sequence表示一個有序類型,見數據類型。

>>> random.choice(('daocoder', 'mudai', 'godao'))
'daocoder'
>>> random.choice(['daocoder', 'mudai', 'godao'])
'godao'

1.2 產生一個隨機序列

random.shuffle(x[, random]):用于將一個列表中的元素打亂。修改原有序列。

>>> a=['daocoder', 'mudai', 'godao']
>>> random.shuffle(a)
>>> a
['daocoder', 'godao', 'mudai']

random.sample(sequence, k):從指定序列中隨機獲取指定長度的片斷。不會修改原有序列。

>>> a=['daocoder', 'mudai', 'godao', 'zhangsan', 'lisi', 'wangwu']
>>> random.sample(a, 5)
['godao', 'zhangsan', 'daocoder', 'lisi', 'mudai']
>>> random.sample(a, 4)
>>>> a
['daocoder', 'mudai', 'godao', 'zhangsan', 'lisi', 'wangwu']
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,797評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,179評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,628評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,642評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,444評論 6 405
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,948評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,040評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,185評論 0 287
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,717評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,602評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,794評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,316評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,045評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,418評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,671評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,414評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,750評論 2 370

推薦閱讀更多精彩內容

  • Python中的random模塊用于生成隨機數。下面介紹一下random模塊中最常用的幾個函數。 random.r...
    隨風化作雨閱讀 417評論 0 0
  • 代碼開始出加入import random導入random模塊 1、random.random random.ran...
    marshb閱讀 3,609評論 0 1
  • Python中的random模塊用于生成隨機數。下面介紹一下random模塊中最常用的幾個函數。 random.r...
    大明白閱讀 569評論 0 51
  • Python中的random模塊用于生成隨機數。 下面具體介紹random模塊的功能: 1. random.ra...
    敢夢敢當閱讀 380評論 0 0
  • 1.random.random random.random用來生成一個1到0的隨機浮點數0<=N<1. 2.ran...
    TENG書閱讀 493評論 0 0