import sys
Wi = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7,9, 10, 5, 8, 4, 2]
IndexTable = { #此处实际是无需使用字典的,使用一个包含11个元素的数组便可,数组中存放
0 : '1', #相应位置的号码,但是这也正好演示了Python高级数据结构的使用
1 : '0',
2 : 'x',
3 : '9',
4 : '8',
5 : '7',
6 : '6',
7 : '5',
8 : '4',
9 : '3',
10 : '2'
}
No = []
sum = 0
if (len(sys.argv[1:][0]) != 17):
print "error number"
sys.exit()
for x in sys.argv[1:][0]:
No.append(x)
for i in range(17):
sum = sum + (int(No[i]) * Wi[i])
Index = sum % 11
print "So, your indicates parity is : %s" % (IndexTable[Index])
import sys
if __name__ != '__main__':
print "Cannot run in module"
sys.exit()
Wi = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7,9, 10, 5, 8, 4, 2]
IndexTable = {
0 : '1',
1 : '0',
2 : 'x',
3 : '9',
4 : '8',
5 : '7',
6 : '6',
7 : '5',
8 : '4',
9 : '3',
10 : '2'
}
def check(identity):
if(len(identity) == 0):
print "please input your identity number"
sys.exit()
elif (len(identity[0]) != 17):
print "error number"
sys.exit()
def calculate(identity):
No = []
sum = 0
for x in identity[0]: #这个方法是很笨拙的,直接使用No = list(identity[0])便可达到同样的目的
No.append(x)
for i in range(17):
sum = sum + (int(No[i]) * Wi[i])
Index = sum % 11
return IndexTable[Index]
check(sys.argv[1:])
result = calculate(sys.argv[1:])
print "So, your indicates parity is : %s" % (result)
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有