1
Amy 原创整理|资料核验:2026-11-03
Python官方文档说明:常规调用base64.b64decode时,validate默认False,非Base64字母表字符会在填充检查前被丢弃;设为True时,这类字符会导致binascii.Error。解码成功因此不一定意味着原始文本格式完全合格。
教学示例:base64.b64decode('YQ==')得到b'a';在字符串开头加上感叹号,默认调用仍可解码。改为base64.b64decode('!YQ==', validate=True),则应触发格式异常。这个示例用于观察默认行为差异,不是实际业务数据。
Amy建议:接口若约定必须提交严格格式,就显式设置验证选项并处理异常,不要先悄悄删除陌生字符。若约定允许换行或特定字符,应按使用中的Python版本与协议另定规则;解码的结果是bytes,需要文字时还应按约定编码转换。