如何在python 3中使用base64编码字符串并删除新行 背景:
我试图在python 3.5.2中为SOAP请求将用户名和密码字符串编码为base 64 代码: 此代码完全复制自以下示例: 错误: 如果您知道如何将字符串编码到base64编解码器,请告诉我。谢谢 答复: 我几乎不知道错误来自于编码字符串后使用的replace函数。使用b64encode,这样就不必编写自己的替换函数来替换新行 试试这个:如何在python 3中使用base64编码字符串并删除新行 背景:,python,base64,encode,python-3.5,Python,Base64,Encode,Python 3.5,我试图在python 3.5.2中为SOAP请求将用户名和密码字符串编码为base 64 代码: 此代码完全复制自以下示例: 错误: 如果您知道如何将字符串编码到base64编解码器,请告诉我。谢谢 答复: 我几乎不知道错误来自于编码字符串后使用的replace函数。使用b64encode,这样就不必编写自己的替换函数来替换新行 试试这个: base64string = base64.b64encode( bytes(base64string, "utf-8") ) base64的替代方案:
base64string = base64.b64encode( bytes(base64string, "utf-8") )
base64的替代方案:
import codecs
codecs.encode(bytes("mystring", 'utf8'), 'base64')
谢谢!我的问题是因为replace函数试图替换字节值上的字符串。这是答案,因为b64encode删除了“\n”
Attempt 1: using the base64 codec
base64string = base64.encodestring(base64string).replace('\n', '')
Result: TypeError: expected bytes-like object, not str
base64string = base64.b64encode( bytes(base64string, "utf-8") )
import codecs
codecs.encode(bytes("mystring", 'utf8'), 'base64')