如何在python 3中使用base64编码字符串并删除新行 背景:

如何在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的替代方案:

我试图在python 3.5.2中为SOAP请求将用户名和密码字符串编码为base 64

代码: 此代码完全复制自以下示例:

错误: 如果您知道如何将字符串编码到base64编解码器,请告诉我。谢谢

答复: 我几乎不知道错误来自于编码字符串后使用的replace函数。使用b64encode,这样就不必编写自己的替换函数来替换新行

试试这个:

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')