编解码器无法解码字节 - base64-decoding

时间:2021-04-13 21:46:24

标签: python base64

我在使用 base64.b64decode() 解码 base64 文本时遇到了一些问题。我有一个功能:

import base64

def base64_to_bin(base):
    decoded = ''
    for letter in base64.b64decode(base):
        decoded += bin(letter)[2:].zfill(8)
        
    return decoded

如果我做 base64_to_bin('YQ=='),我会得到 01100001。如果我做 base64_to_bin('fXBz'),我会得到 011111010111000001110011。但是,如果我将 fXB 上移(或者应该下移?)一个字母,我会得到:

for letter in base64.b64decode(base).decode():
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x81 in position 0: invalid start byte

为什么改变一个字母会破坏它?

0 个答案:

没有答案