本文實例講述了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]
PS:這里再提供幾款相關工具供大家參考使用:
在線隨機生成個人信息數據工具:
http://tools.jb51.net/aideddesign/rnd_userinfo
在線隨機字符/隨機密碼生成工具:
http://tools.jb51.net/aideddesign/rnd_password
在線隨機數字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu
常用電話號碼在線查詢:
http://tools.jb51.net/bianmin/pub_tel
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數學運算技巧總結》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
新聞熱點
疑難解答