Python随机生成电话号码&号码段分析

'''
搜集到以下手机号码,当然这也不全,不过也可以分析出一些规律了
中国电信号段:133,153, 180,181,189,170,173, 177,149
中国联通号段:130,131,132,155,156,185,186,145,175,176,185,171
中国移动号段:134,135,136,137,138,139,150,151,152,158,159,182,183,184,172,147,178

# 规律总结
第一位永远是  1
第二位可以是  3,4,5,7,8
第三位是由第二位决定的,有以下情况:
13 + 【0-9】
14 + 【5,7,9】
15 + 【0-9】 !4
17 + 【0-9】!4and9
18 + 【0-9】
后八位:是0-9随机
    
'''
import random

def getAPhoneNumber():
    second = random.choice([3,4,5,7,8])
    third = {
        3:random.randint(0,9),
        4:random.choice([5,7,9]),
        5:random.choice([i for i in range(10) if i != 4]),
        7:random.choice([i for i in range(9) if i != 4 ]),
        8:random.randint(0,9),
    }[second]
    
    last = "".join(str(random.randint(0,9)) for i in range(8))
    return "1{}{}{}".format(second,third,last)

print(getAPhoneNumber())


 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值