我试图将位图图像转换为base64字符串,然后将其作为二进制blob插入数据库.base64字符串需要以每76个字符后的新行字符进行编码.这样做的最好的pythonic方法是什么?
mpb*_*mpb 10
对于Python版本3:
import base64
base64.encodebytes(s)
Run Code Online (Sandbox Code Playgroud)
https://docs.python.org/3/library/base64.html#base64.encodebytes
编码类似字节的对象s,它可以包含任意二进制数据,并返回包含base64编码数据的字节,在每76个字节的输出后插入换行符(b'\n'),并确保有一个尾随换行符,根据RFC 2045(MIME).
例:
>>> print(base64.encodebytes(b'a' * 100).decode())
YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFh
YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQ==
>>>
Run Code Online (Sandbox Code Playgroud)
对于Python版本2:
import base64
base64.encodestring(s)
Run Code Online (Sandbox Code Playgroud)
http://docs.python.org/library/base64.html
对字符串s进行编码,该字符串可以包含任意二进制数据,并返回包含一行或多行base64编码数据的字符串.encodestring()返回一个包含一行或多行base64编码数据的字符串,该数据总是包含一个额外的尾随换行符('\n').
版本2的文档当然可以更清楚地编写,但它可以满足您的需求.
例:
>>> print base64.encodestring('a'*100)
YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFh
YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQ==
>>>
Run Code Online (Sandbox Code Playgroud)