def base64_encode(text: str) -> str: # 1. 字符串 → 字节 → 24 比特位流 bits = "".join(format(b, "08b") for b in text.encode()) # 2. 不足 6 的倍数就补零 bits += "0" * (-len(bits) % 6) # 3. 每 6 位一组 → 查表 idx = [int(bits[i:i+6], 2) for i in range(0, len(bits), 6)] out = "".join(ALPHABET[i] for i in idx) # 4. 每 3 字节产出 4 字符,缺位补 '=' return out + "=" * ((3 - len(text) % 3) % 3)