.vimrc
我正在使用Google Colab训练网络。我从一个文本文件中读取了图像标签,它们似乎已编码。
标签显示为:
trainLabels = files.upload()
labels = (trainLabels['LabelsTrain.txt']).splitlines()
trainLabels = [k.encode("utf-8") for k in labels]
因此,我尝试使用[b'53.239448782705836', b'24.01860123103387', b'32.0400103628653']
删除'b'
。
但是,出现以下错误:
encode("utf-8")
我该如何解决该错误?
答案 0 :(得分:1)
读取文件时,字符串仍然具有用utf
或ascii
编码的字节类型。
在python中,encode
将字符串设置为byte type
,并且您的数据已经是b
(字节类型)。
因此byte
在python中再次编码为Unicode byte
是不可能的。它会导致该错误。
在python解释器中看起来可读(它只是显示为人类可读),但是实际数据是以Unicode字节格式编码的。
因此,在Python解释器中,使用decode
使bytestrem成为Unicode文本,而没有b
则使句柄文本
因此,将encode
更改为decode
会很好。
trainLabels = [k.decode("utf-8") for k in labels]