关于Base64编码原理,这里推荐一篇很好的博客一篇文章彻底弄懂Base64编码原理
然后以下是我的python实现:
# coding:utf-8
import base64
ALPHA=[chr(i) for i in range(65,91)]
alpha=[chr(i) for i in range(97,123)]
digit = [str(i) for i in range(0,10)]
ALPHA.extend(alpha)
ALPHA.extend(digit)
ALPHA.append('+')
ALPHA.append("/")
table = {}
# 构建映射表
for i,v in enumerate(ALPHA):
table[i]=v
class Myencoder():
def __init__(self,yard=8,table={}):
self.table=table
self.yard=yard
def baseEncode(self,target):
if not isinstance(target,bytes) and not isinstance(target,str):
raise TypeError('不是可以编码的类型')
result = ""
for i in range(0,len(target),3):
tlist = ""
current = target[i:i+3]
fo