本文实例讲述了Python实现随机生成有效手机号码及身份证功能。分享给大家供大家参考,具体如下:

中国那么大,人那么多,几乎人手一部手机。手机号码已经作为各大互联网站的注册账户。同样,身份证更是如此。以下是生成有效手机号码和身份证号。
身份证需要下载districtcode.txt文件。
完整代码如下:
import os
import random
import datetime
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
DC_PATH = BASE_DIR + "districtcode.txt"
# 随机生成手机号码
def createPhone():
prelist=["130","131","132","133","134","135","136","137","138","139","147","150","151","152","153","155","156","157","158","159","186","187","188"]
return random.choice(prelist)+"".join(random.choice("0123456789") for i in range(8))
# 随机生成身份证号
def getdistrictcode():
with open(DC_PATH) as file:
data = file.read()
districtlist = data.split('\n')
for node in districtlist:
#print node
if node[10:11] != ' ':
state = node[10:].strip()
if node[10:11]==' 'and node[12:13]!=' ':
city = node[12:].strip()
if node[10:11] == ' 'and node[12:13]==' ':
district = node[14:].strip()
code = node[0:6]
codelist.append({"state":state,"city":city,"district":district,"code":code})
def gennerator():
global codelist
codelist = []
if not codelist:
getdistrictcode()
id = codelist[random.randint(0,len(codelist))]['code'] #地区项
id = id + str(random.randint(1930,2013)) #年份项
da = datetime.date.today()+datetime.timedelta(days=random.randint(1,366)) #月份和日期项
id = id + da.strftime('%m%d')
id = id+ str(random.randint(100,300))#,顺序号简单处理
i = 0
count = 0
weight = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2] #权重项
checkcode ={'0':'1','1':'0','2':'X','3':'9','4':'8','5':'7','6':'6','7':'5','8':'5','9':'3','10':'2'} #校验码映射
for i in range(0,len(id)):
count = count +int(id[i])*weight[i]
id = id + checkcode[str(count%11)] #算出校验码
return id
print createPhone()
print gennerator()
运行结果如下:
PS:这里再提供一款本站身份证归属地信息查询工具供大家参考:
身份证归属地信息在线查询:
http://tools./bianmin/sfz
另外,本站在线工具小程序上也有一款功能更加强大的身份证信息获取工具,感兴趣的朋友可以扫描如下小程序码查看:
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python字符串操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
# Python
# 随机
# 生成
# 手机号码
# 身份证
# python3 requests中使用ip代理池随机生成ip的实例
# python 在指定范围内随机生成不重复的n个数实例
# Python随机生成一个6位的验证码代码分享
# 利用python3随机生成中文字符的实现方法
# Python随机生成身份证号码及校验功能
# Python随机生成手机号、数字的方法详解
# python 随机生成10位数密码的实现代码
# python随机生成大小写字母数字混合密码(仅20行代码)
# python使用Random随机生成列表的方法实例
# Python轻松实现2位小数随机生成
# 感兴趣
# 操作技巧
# 归属地
# 进阶
# 校验码
# 相关内容
# 那么多
# 各大
# 数据结构
# 给大家
# 互联
# 上也
# 那么大
# 更多关于
# 信息查询
# 所述
# 中国
# 程序设计
# 使用技巧
# 再提
相关文章:
宝盒自助建站智能生成技巧:SEO优化与关键词设置指南
定制建站哪家更专业可靠?推荐榜单揭晓
平台云上自主建站:模板化设计与智能工具打造高效网站
如何访问已购建站主机并解决登录问题?
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
网站制作软件有哪些,制图软件有哪些?
免费视频制作网站,更新又快又好的免费电影网站?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
制作网站公司那家好,网络公司是做什么的?
小型网站建站如何选择虚拟主机?
制作旅游网站html,怎样注册旅游网站?
如何快速生成ASP一键建站模板并优化安全性?
如何有效防御Web建站篡改攻击?
购物网站制作公司有哪些,哪个购物网站比较好?
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
建站之星北京办公室:智能建站系统与小程序生成方案解析
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
已有域名和空间如何快速搭建网站?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
c++ stringstream用法详解_c++字符串与数字转换利器
网站企业制作流程,用什么语言做企业网站比较好?
如何用狗爹虚拟主机快速搭建网站?
如何零成本快速生成个人自助网站?
定制建站模板如何实现SEO优化与智能系统配置?18字教程
建站之星后台管理:高效配置与模板优化提升用户体验
建站主机数据库如何配置才能提升网站性能?
上海网站制作开发公司,上海买房比较好的网站有哪些?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
安云自助建站系统如何快速提升SEO排名?
建站VPS选购需注意哪些关键参数?
建站之星安装路径如何正确选择及配置?
长沙企业网站制作哪家好,长沙水业集团官方网站?
做企业网站制作流程,企业网站制作基本流程有哪些?
智能起名网站制作软件有哪些,制作logo的软件?
婚礼视频制作网站,学习*后期制作的网站有哪些?
建站之星上传入口如何快速找到?
制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?
网站制作需要会哪些技术,建立一个网站要花费多少?
个人摄影网站制作流程,摄影爱好者都去什么网站?
杭州银行网站设计制作流程,杭州银行怎么开通认证方式?
如何在IIS中新建站点并解决端口绑定冲突?
音乐网站服务器如何优化API响应速度?
如何基于PHP生成高效IDC网络公司建站源码?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
如何快速查询网站的真实建站时间?
上海网站制作网站建设公司,建筑电工证网上查询系统入口?
如何用PHP工具快速搭建高效网站?
如何选择高效可靠的多用户建站源码资源?
建站之星免费模板:自助建站系统与智能响应式一键生成
*请认真填写需求信息,我们会在24小时内与您取得联系。