本文介绍了在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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-05 17:37