# -*- coding:utf-8 -*-
import random
x=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
d={
'0':'1',
'1':'0',
'2':'X',
'3':'9',
'4':'8',
'5':'7',
'6':'6',
'7':'5',
'8':'4',
'9':'3',
'10':'2'}
def check(code):
sum=0
n=0
for i in code :
sum += int(i)*x[n]
n+=1
result=sum%11
return d[str(result)]
def make_card():
# 地区 150105
area=150105
# 年份 1940~1998
year=random.randint(1940,1998)
# 月份
month=random.randint(1,12)
# 日期
day=random.randint(1,28)
# 性别
gender=random.randint(1,2)
# 派出所 78
s='%d%d%02d%02d78%d' % (area,year,month,day,gender)
cardid=s+check(s)
return cardid
print(make_card())
# 生成指定数据的身份证号
def make_card_file(n):
with open('cards.txt','w',encoding='utf-8',newline='\r') as f:
for i in range(n-1):
f.write(make_card()+'\r')
f.write(make_card())
make_card_file(10)
工作需要写了个小脚本,嗯...就酱
最新推荐文章于 2021-01-23 15:53:21 发布