我尝试了很多方法将类似于b'\xef\xbb\xbf\xe5\x9b\xbd\xe9\x99\x85\xe5\x8f\x8b\xe8\xb0\x8a'的字符串转换为中文字符,但都失败了。
真奇怪,当我只使用
print(b'\xef\xbb\xbf\xe5\x9b\xbd\xe9\x99\x85\xe5\x8f\x8b\xe8\xb0\x8a')
它会显示解码后的中文字符。
但如果我从CSV文件中读取该字符串,则无法这样做。不管我如何解码字符串,它都只会显示b'\xef\xbb\xbf\xe5\x9b\xbd\xe9\x99\x85\xe5\x8f\x8b\xe8\xb0\x8a'
这是我的脚本:
import csv
with open('need_convert.csv','r+') as csvfile:
reader=csv.reader(csvfile)
for row in reader:
new_row=''.join(row)
print('new_row:')
print(type(new_row))
print(new_row)
print('convert:')
print(new_row.decode('utf-8'))
这是我的数据(csv文件): b'\xef\xbb\xbf国际友谊' b'\xef\xbb\xbf麒麟杯' b'\xef\xbb\xbf国际友谊'
print(str(your_encoding))
。 - Fallenreaper