zoukankan      html  css  js  c++  java
  • IMEI批量生成(Python)

    IMEI为15位数字

    格式为AAAAAAAA BBBBBB C

    AAAAAAAA 为 Type Allocation Code

    BBBBBB 为 Serial Number

    C 为 Check Digit

    IMEI校验码算法:
    (1).将偶数位数字分别乘以2,分别计算个位数和十位数之和
    (2).将奇数位数字相加,再加上上一步算得的值
    (3).如果得出的数个位是0则校验位为0,否则为10减去个位数

    如下是批量生成1000笔IMEI数据的Python实现代码.

    #!/usr/bin/python 
    # -*- coding: UTF-8 -*- 
    def genImeiLuhn(digits14): 
        digit15=0 
        for num in range(14): 
            if num%2==0: 
                digit15=digit15+int(digits14[num]) 
            else: 
                digit15=digit15+(int(digits14[num])*2)%10+(int(digits14[num])*2)/10 
        digit15=int(digit15)%10 
        if digit15==0: 
            digits14=digits14+str(digit15) 
        else: 
            digits14=digits14+str(10-digit15) 
        return digits14 
    def genMassImei(stat14digits,amount,filepath): 
        fo=open(filepath,"wb") 
        for num in range(amount): 
            imei=genImeiLuhn(stat14digits) 
            stat14digits=str(long(stat14digits)+1) 
            fo.write(imei+"
    ") 
            print imei 
        fo.flush() 
        fo.close() 
    genMassImei("12345678901234",1000,"imei2.txt")
  • 相关阅读:
    Ceph相关
    Redis学习
    docker mysql
    WebSocket学习与使用
    nginx学习与使用
    python学习小记
    基数计数——HyperLogLog
    Swagger使用小记
    理解Java枚举类型
    Jenkins使用
  • 原文地址:https://www.cnblogs.com/newvoyage/p/5542542.html
Copyright © 2011-2022 走看看