首页 > 编程 > Python > 正文

Python随机生成手机号、数字的方法详解

2020-01-04 17:02:13
字体:
来源:转载
供稿:网友

本文实例讲述了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]

 

希望本文所述对大家Python程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表