如何删除从文件中读取的字符串中的编码“b”?

2024-04-20 12:17:45 发布

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

trainLabels = files.upload()
labels = (trainLabels['LabelsTrain.txt']).splitlines()
trainLabels = [k.encode("utf-8") for k in labels]

我正在用谷歌酷宝来训练一个网络。我从文本文件中读取图像标签,它们似乎被编码了。

标签显示为:

^{pr2}$

所以我试图使用^{{cd2>}来删除^{cd1>}。 但是,我得到以下错误:

^{pr3}$

我如何解决这个错误?


Tags: in网络txtforlabels错误files标签
1条回答
网友
1楼 · 发布于 2024-04-20 12:17:45

当您读取文件时,字符串仍然是以utfascii编码的字节类型。在

在python中,encode生成byte type的字符串,并且您的数据已经是b(字节类型)。在

因此,在python中,byte不可能再次编码为Unicode byte。它犯了这个错误。在

在python解释器中它看起来是可读的(它只是显示给人看的),但是实际数据是以Unicode字节格式编码的。

因此,在python解释器中使用decode将bytestrem转换为Unicode文本,而不使用b的句柄文本

因此,将encode更改为decode会很好地工作。在

trainLabels = [k.decode("utf-8") for k in labels]

相关问题 更多 >