本文實例講述了Python隨機生成手機號、數字的方法。分享給大家供大家參考,具體如下:
Python隨機產生手機號、數字。代碼如下:
# -*- coding:gbk -*- import random #隨機產生26個手機號:以13開頭,后面跟一位4~9之間的任意一位數字,后面是8位隨機數字 for _ in range(26): print('13' + str(random.randrange(4,10))+ ''.join( str(random.choice(range(10))) for _ in range(8) ) ) #隨機產生26個數字:產生一個0~1之間的隨機小數,乘1000,四舍五入到小數后3位,加上隨機產生的30~59之間的數字 #由于sample函數返回的結果是list類型的,這里通過[0]取出第1個值 for i in range(26): print( round(random.random()* 1000,3 ) + random.sample(range(30,60,3),2)[0] )
函數簡介:
(1)randrange:這個函數會產生范圍是4~9之間的任意一個數字,注意不包含10.
>>> random.randrange(5) 2 >>> random.randrange(1,5) 1
(2)choice: 數據源是range(10),也就是從0~9之間隨機選擇一個數字,多次調用可能產生重復值
>>> random.choice(['a','b','c','d','e']) 'b' >>> random.choice(['a','b','c','d','e']) 'd' >>> random.choice(['a','b','c','d','e']) 'c' >>> random.choice(['a','b','c','d','e']) 'b'
(3)random:產生從0~1之間的隨機小數
>>> import random >>> random.random() 0.7379992978183179 >>> random.random() 0.4720995823183177
(4)sample:數據源是range(30,60,3),從30~59之間(步進是3),也就是30、33、36。。這樣的數字中,選擇2個,這2個數字不會重復
>>> random.sample(['a','b','c','d','e'],2) ['d', 'b'] >>> random.sample(['a','b','c','d','e'],2) ['a', 'b'] >>> random.sample(['a','b','c','d','e'],2) ['e', 'd']
其他函數:
(5)seed:要返回相同的隨機數,可以設置相同的種子
>>> random.seed(5) >>> random.random() 0.6229016948897019 >>> random.seed(5) >>> random.random() 0.6229016948897019
(6)shuffle:隨機排列
>>> t=[0,1,2,3,4,5,6] >>> t [0, 1, 2, 3, 4, 5, 6] >>> random.shuffle(t) >>> t [5, 4, 2, 0, 6, 1, 3]
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com