在python中将unicode数据附加到字符串

2024-05-19 00:43:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将一些二进制数据附加到python中的字符串文件中,但出现以下错误: 'ascii' codec can't decode byte 0x9d in position 408: ordinal not in range(128)

我的代码如下所示:

binary = 'contains some binary data read from file'
#binary = binary.decode("utf-8")
str = 'packet header data'

packet = str + binary       #error here

在将二进制数据追加到字符串时,我得到了上面的错误。我试过使用编码和解码。在

编辑: 在解码二进制对象时,我也会得到同样的错误。在


Tags: 文件数据字符串indatapacket错误ascii
2条回答

如果这是python2.x,那么在连接两个字符串时不应该收到该异常。在

以下几点对我来说很好:

binary = '\x9d'
str = 'packet header data'
packet = str + binary

您的错误更有可能来自print语句或对以文本模式打开的文件的写入。在

要么对两者进行解码,要么以unicode文本开头。在

str = u'packet header data'
packet = str + binary

相关问题 更多 >

    热门问题