Python随机生成手机号与数字的方法详解
本文详解Python中利用random模块随机生成手机号及数字的方法。通过randrange、choice、sample等函数,实现13段手机号及特定范围数字的生成,并介绍seed与shuffle函数的用法,附完整代码与在线工具推荐。
本文介绍了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、33、36...57、59)中选取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']
此外,random模块还提供其他辅助函数:
(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]
此外,推荐以下在线工具辅助生成相关数据:
在线随机生成个人信息数据工具: 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文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









