蝴蝶是我 2023-05-03 19:28 采纳率: 76.5%
浏览 28
已结题

python写字符串转base64码

我想写一个由python编写的字符串转base64码的代码,写的代码如下。
问题是:代码无法正常输出ASCII码,并且它莫名其妙有个输入,我检查了我的代码,我并没有设置与输入有关的代码。而且在 #切6位 代码之前的代码都能正常输出。我的代码出现了多次字符串与列表的转换,不知道是不是这个原因。

s="asd"
t=""
for n in s:
  n=ord(n)#字符转ascii码
  n=bin(n)
  n=list(n)
  del(n[0])#删去二进制的代表ob
  del(n[0])
  n="".join(n)#列表与字符串的转换
  n=n.rjust(8,"0")#8位补0
  t=t+n#拼接字符串成一整串,此时t为字符串
t = [t[i:i+6] for i in range(0, len(t), 6)]#切6位
for x in t:
  x=int(x,2)
  x=chr(x)
  print(x)
  #print(x)
#print(t)

img

  • 写回答

2条回答 默认 最新

  • 创意程序员 2023-05-03 20:26
    关注

    使用 Base64 编码表:
    base64_table = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
    倒数第二行,x=chr(x)改为:
    x=base64_table[x]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月11日
  • 已采纳回答 5月3日
  • 创建了问题 5月3日