在 Python 3 中将整数的字符串表示形式编码为 base64

Encode string representation of integer to base64 in Python 3(在 Python 3 中将整数的字符串表示形式编码为 base64)

本文介绍了在 Python 3 中将整数的字符串表示形式编码为 base64的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将 int 编码为 base64,我正在这样做:

I'm trying to encode an int in to base64, i'm doing that:

foo = 1
base64.b64encode(bytes(foo))

预期输出: 'MQ=='

给定输出: b'AA=='

我做错了什么?

在 Python 2.7.2 中可以正常工作

in Python 2.7.2 works correctly

推荐答案

试试这个:

foo = 1
base64.b64encode(bytes([foo]))

foo = 1
base64.b64encode(bytes(str(foo), 'ascii'))
# Or, roughly equivalently:
base64.b64encode(str(foo).encode('ascii'))

第一个示例对 1 字节整数 1 进行编码.第二个示例编码 1 字节字符串 '1'.

The first example encodes the 1-byte integer 1. The 2nd example encodes the 1-byte character string '1'.

这篇关于在 Python 3 中将整数的字符串表示形式编码为 base64的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:在 Python 3 中将整数的字符串表示形式编码为 base64

基础教程推荐