当前位置:   article > 正文

python 进制转换示例代码_import randomalpha='0123456789abcdefghijklmnopqrst

import randomalpha='0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnop
  1. # 10进制转77进制
  2. def encode_b77(n):
  3. table = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_=+)(*&^%$#@!~'
  4. result = []
  5. temp = int(n)
  6. if 0 == temp:
  7. result.append('0')
  8. else:
  9. while 0 < temp:
  10. result.append(table[temp % 77])
  11. temp = int(temp/77)
  12. return ''.join([x for x in reversed(result)])
  13. #77进制转10进制
  14. def decode_b77(str):
  15. table = {"0": 0, "1": 1, "2": 2, "3": 3, "4": 4, "5": 5,
  16. "6": 6, "7": 7, "8": 8, "9": 9,
  17. "a": 10, "b": 11, "c": 12, "d": 13, "e": 14, "f": 15, "g": 16,
  18. "h": 17, "i": 18, "j": 19, "k": 20, "l": 21, "m": 22, "n": 23,
  19. "o": 24, "p": 25, "q": 26, "r": 27, "s": 28, "t": 29, "u": 30,
  20. "v": 31, "w": 32, "x": 33, "y": 34, "z": 35,
  21. "A": 36, "B": 37, "C": 38, "D": 39, "E": 40, "F": 41, "G": 42,
  22. "H": 43, "I": 44, "J": 45, "K": 46, "L": 47, "M": 48, "N": 49,
  23. "O": 50, "P": 51, "Q": 52, "R": 53, "S": 54, "T": 55, "U": 56,
  24. "V": 57, "W": 58, "X": 59, "Y": 60, "Z": 61,
  25. "-": 62, "_": 63, '=': 64, '+': 65, ')': 66, '(': 67, '*': 68,
  26. '&': 69, '^': 70, '%': 71, '$': 72, '#': 73, '@': 74, '!': 75,
  27. '~': 76}
  28. result = 0
  29. for i in range(len(str)):
  30. result *= 77
  31. result += table[str[i]]
  32. return result
  33. #使用示例
  34. t = encode_b77(10000)
  35. print(t)
  36. d = decode_b77(t)
  37. print(d)

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/54617
推荐阅读
相关标签
  

闽ICP备14008679号