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]



转载于:https://www.cnblogs.com/momogua/archive/2011/10/09/8304644.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值