You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何实现Base64文本解码?解码功能运行异常报错如何解决?

问题根因

  • 解码后输出乱码:base64.decodebytes()返回的是bytes类型对象,直接打印会输出带b前缀的十六进制转义内容,没有转为UTF-8字符串做可读性处理
  • 得到非预期的b'm!\x95\xb1\xb1\xbc'结果:输入的待解码内容和Hello对应的标准Base64编码不匹配,Hello对应的正确Base64编码为SGVsbG8=
  • 之前的字符串类型报错:base64.decodebytes()要求传入bytes类型参数,你当前代码中askdecode = askdecode.encode()这一行已经解决了该问题,现在不会再触发该报错
  • 之前功能变成编码:大概率是调用函数时误执行了encode()而非decode()

修复后完整代码

import base64

def encode():
    askencode = input("输入需要编码的内容:")
    askencode = askencode.encode("utf-8")
    base64_info_encode = base64.b64encode(askencode)
    print("编码后的bytes内容:", base64_info_encode)
    print("编码后的字符串内容:", base64_info_encode.decode("utf-8"))

def decode():
    askdecode = input("输入需要解码的内容:")
    askdecode = askdecode.encode()
    base64_info_decode = base64.decodebytes(askdecode)
    # 新增bytes转字符串逻辑实现可读输出
    print("解码后的内容:", base64_info_decode.decode("utf-8"))

测试验证

运行decode()函数,输入SGVsbG8=,即可得到输出解码后的内容: Hello

内容的提问来源于stack exchange,提问作者Maniac

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 19:36:03