FirstProject

FirstProject Code here, 😜

View project on GitHub

进制转换

# coding=UTF-8
# scale_conversion.py

"""
- id 压缩方案, 用于生成标签暗码
    - 把id转成36进制
    - 4位可用 36 ** 4   = 1679616 情况
- 提供36转10进制func
"""


def base10toN(num, n=36):
    """
        十进制 -> N进制
    """
    chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
    res = ''
    curr = num
    while curr != 0:
        res = chars[curr % n] + res
        curr = curr / n
    return res


def baseNto10(s, n=36):
    """
        N进制 -> 十进制
    """
    chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
    depth = res = 0
    for char in s[::-1]:
        res += chars.index(char) * (n ** depth)
        depth += 1
    return res