python - 对于 Base64 编码,更喜欢 str.encode ('base64_codec' ) 或 base64.b64encode(str)?

标签 python codec

在 Python 库中,有一个 base64 模块用于处理 Base64。同时,如果要对字符串进行编码,有base64的codec,即str.encode('base64_encode')。首选哪种方法?

最佳答案

虽然它可能适用于 Python 2:

>>> 'foo'.encode('base64')
'Zm9v\n'

Python 3 不支持它:

>>> 'foo'.encode('base64')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
LookupError: unknown encoding: base64

而且就速度而言(在 Python 2 中),b64encode 方法大约比 .encode() 快三倍:

In [1]: %timeit 'fooasodaspf8ds09f8'.encode('base64')
1000000 loops, best of 3: 1.62 us per loop

In [5]: %timeit b64encode('fooasodaspf8ds09f8')
1000000 loops, best of 3: 564 ns per loop

所以无论是速度还是兼容性,base64模块都更好。

关于python - 对于 Base64 编码,更喜欢 str.encode ('base64_codec' ) 或 base64.b64encode(str)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16205713/

相关文章:

python - 如何避免此错误 "SyntaxError: unexpected EOF while parsing"

python - 如何将 sklearn 的 TransformedTargetRegressor 与自定义数据转换器一起使用?

android - Android 音频编解码器

audio - 需要帮助找出WAVE文件的编码

codec - FFMPEG中帧和包的区别

python - 用字符列表压缩元组列表

python - ximgproc_DisparityWLSFilter.filter() 参数是什么?

python - 将元组中的值提取到列中

iphone - 为 Syphon- iPhone 客户端启用 g729 编解码器

video - FFmpeg 将 mpeg2 转码为 H264 并比较帧