Python实现随机生成有效手机号码及身份证功能示例


Posted in Python onJune 05, 2017

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

运行结果如下:

Python实现随机生成有效手机号码及身份证功能示例

Python 相关文章推荐
Pyhton中防止SQL注入的方法
Feb 05 Python
python同时给两个收件人发送邮件的方法
Apr 30 Python
对Python中的@classmethod用法详解
Apr 21 Python
linux下python使用sendmail发送邮件
May 22 Python
python3.5基于TCP实现文件传输
Mar 20 Python
Python面向对象基础入门之设置对象属性
Dec 11 Python
解决Django加载静态资源失败的问题
Jul 28 Python
python 图像处理画一个正弦函数代码实例
Sep 10 Python
python 实现让字典的value 成为列表
Dec 16 Python
python生成13位或16位时间戳以及反向解析时间戳的实例
Mar 03 Python
python为QT程序添加图标的方法详解
Mar 09 Python
Python文本文件的合并操作方法代码实例
Mar 31 Python
Python中模块pymysql查询结果后如何获取字段列表
Jun 05 #Python
Python实现选择排序
Jun 04 #Python
Python使用pymysql小技巧
Jun 04 #Python
Python常见异常分类与处理方法
Jun 04 #Python
Python实现Linux的find命令实例分享
Jun 04 #Python
安装Python和pygame及相应的环境变量配置(图文教程)
Jun 04 #Python
Python安装官方whl包和tar.gz包的方法(推荐)
Jun 04 #Python
You might like
Banner程序
2006/10/09 PHP
CI框架源码解读之利用Hook.php文件完成功能扩展的方法
2016/05/18 PHP
Zend Framework入门教程之Zend_Mail用法示例
2016/12/08 PHP
imagettftext() 失效,不起作用
2021/03/09 PHP
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
2010/12/28 Javascript
非常漂亮的JS+CSS图片幻灯切换特效
2013/11/20 Javascript
创建你的第一个AngularJS应用的方法
2015/06/16 Javascript
JS实现显示带倒影的图片横排居中放大展示特效实例【测试可用】
2016/08/23 Javascript
深入理解jQuery()方法的构建原理
2016/12/05 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
2016/12/06 Javascript
JavaScript字符串对象(string)基本用法示例
2017/01/18 Javascript
JS中IP地址与整数相互转换的实现代码
2017/04/10 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
基于jQuery ztree实现表格风格的树状结构
2018/08/31 jQuery
vue学习笔记五:在vue项目里面使用引入公共方法详解
2019/04/04 Javascript
对node通过fs模块判断文件是否是文件夹的实例讲解
2019/06/10 Javascript
Vue中消息横向滚动时setInterval清不掉的问题及解决方法
2019/08/23 Javascript
axios 实现post请求时把对象obj数据转为formdata
2019/10/31 Javascript
分享Angular http interceptors 拦截器使用(推荐)
2019/11/10 Javascript
Python自定义类的数组排序实现代码
2016/08/28 Python
python3大文件解压和基本操作
2017/12/15 Python
python实现批量解析邮件并下载附件
2018/06/19 Python
Python中Unittest框架的具体使用
2019/08/27 Python
Django实现分页显示效果
2019/10/31 Python
Django 限制访问频率的思路详解
2019/12/24 Python
pytorch 实现在一个优化器中设置多个网络参数的例子
2020/02/20 Python
python遍历路径破解表单的示例
2020/11/21 Python
Python中读取文件名中的数字的实例详解
2020/12/25 Python
html2canvas生成清晰的图片实现打印的示例代码
2019/09/30 HTML / CSS
澳大利亚家庭花园和DIY工具网店:VidaXL
2019/05/03 全球购物
英国玛莎百货澳大利亚:Marks & Spencer Australia
2019/08/30 全球购物
自考生自我鉴定范文
2013/10/01 职场文书
2015年出纳个人工作总结
2015/04/02 职场文书
防卫过当辩护词
2015/05/21 职场文书
创业计划书之花店
2019/09/20 职场文书
导游词之昭君岛
2020/01/17 职场文书