您好,我正在尝试在 python 中创建一个函数来生成有效的 IMEI 号码,所以这是我的函数。IMEI 验证使用 Luhn 算法,所以我试图在我的脚本中实现它。
def getImei():
num = ''
suma = 0
for i in range(0,13):
digit = random.randrange(0,9)
suma = suma + digit
num = num + str(digit)
suma = suma * 9
digit = suma % 10
num = num + str(digit)
return num
但是,该功能无法生成有效的 IMEI 号码。我在维基百科上找到了一篇文章,告诉我如何生成校验位(http://en.wikipedia.org/wiki/Luhn_algorithm)
校验位 (x) 是通过计算数字总和然后计算该值的 9 倍模 10 获得的(在等式形式中,(67 * 9 mod 10))。算法形式: 1.计算数字的总和(67)。2.乘以 9 (603)。3.最后一位,3,是校验位。
我错过了什么还是维基错了?