Python验证企业工商注册码

yipeiwu_com7年前Python基础

中国企业工商注册码前六位为行政区代码,中间8位顺序编码,最后一位为根据ISO 7064:1983.MOD 11-2校验码计算出来的检验码,本算法根据最后一位校验码的算法来判断企业注册码是否合法,同时稍作修改也可用于判断其他校验码是否正确

 checknum.py

#coding: utf-8
def getchecknum(input): ##定义企业注册码校验码计算函数
  n = 10
  for num in range(len(input)):
    n = (int(input[num]) + n)%10
    if n == 0:
      n = 10
    n = n*2%11
  if n == 0:
    s = 1
  elif n== 1:
    s = 0
  else:
    s = 11-n
  return str(s)
 
code = raw_input(u'请输入该企业15位注册码:')
while True:
  try:
    len(code) == 15
    num = code[:14]
    check_num = int(code[14])
    if check_num == int(getchecknum(num)):
      print u'恭喜你,注册码正确。'
    else:
      print u'请注意,该注册码错误!!!'
 
    break
  except:
    print u"请输入正确的企业15位注册码"
raw_input(u'按任意键退出')

相关文章

Python 硬币兑换问题

硬币兑换问题: 给定总金额为A的一张纸币,现要兑换成面额分别为a1,a2,....,an的硬币,且希望所得到的硬币个数最少。 # 动态规划思想 dp方程式如下 # dp[0] =...

Python3实现定时任务的四种方式

最近做一个小程序开发任务,主要负责后台部分开发;根据项目需求,需要实现三个定时任务: 1>定时更新微信token,需要2小时更新一次; 2>商品定时上线; 3>定时检测...

python生成密码字典的方法

python生成密码字典的方法

这里我使用的是python27 主要用的是我之前博文里提到的itertools循环迭代的模块,用这个模块可以省不少事 首先要调用itertools import itertools...

Python利用Beautiful Soup模块修改内容方法示例

前言 其实Beautiful Soup 模块除了能够搜索和导航之外,还能够修改 HTML/XML 文档的内容。这就意味着能够添加或删除标签、修改标签名称、改变标签属性值和修改文本内容等等...

pygame学习笔记(3):运动速率、时间、事件、文字

pygame学习笔记(3):运动速率、时间、事件、文字

1、运动速率 上节中,实现了一辆汽车在马路上由下到上行驶,并使用了pygame.time.delay(200)来进行时间延迟。看了很多参考材料,基本每个材料都会谈到不同配置机器下运动速率...