新西兰服务器

python怎么模拟贷款卡号生成规则


python怎么模拟贷款卡号生成规则

发布时间:2022-05-09 17:20:38 来源:高防服务器网 阅读:55 作者:iii 栏目:大数据

今天小编给大家分享一下python怎么模拟贷款卡号生成规则的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

1. 生成规则如下:

贷款卡编码一共有16位,最后两位是校验位

整个贷款卡编码的规则如下:

前三位:分别为数字或者大写英文字母

第四位到第十四位:分别为数字

后两位的校验码为

前十四位乘以权重相加后除以97后的余数再加1后得到的数字,

如果此数字为个位数,前面还需要补一个零

前十四位编码对应的权重为1,3,5,7,11,2,13,1,1,17,19,97,23,29

如果某一位为字母,则需要将此字母转换为数字,A转为为10,B转为为11,以此类推。

2. python代码如下:

import random    power = [1,3,5,7,11,2,13,1,1,17,19,97,23,29] #权重  arr = []  sum = 0    #随机生成前14位并保存在列表arr中  for i in range(14):    value = random.randint(0,9)    arr.append(value)    #前十四位乘以权重相加  for j in range(14):    value = arr[j] * power[j]    sum = sum + value    #除以97后的余数再加1  last_two = sum % 97 + 1    #如果此数字为个位数,前面还需要补一个零  if last_two>10:    shiwei = last_two // 10    gewei = last_two % 10    arr.append(shiwei)    arr.append(gewei)  else:    shiwei = 0    gewei = last_two    arr.append(shiwei)    arr.append(gewei)    #输出贷款卡号  print("loanCardNo: ",end="")  for i in range(0,16):    print(arr[i],end="")

以上就是“python怎么模拟贷款卡号生成规则”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注高防服务器网行业资讯频道。

[微信提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]
[