打开带有波浪号字符大字母N的文件时,应使用哪种编码?

时间:2018-08-29 15:06:27

标签: python utf-8 character-encoding

我正在尝试打开一个大字母N波浪号(http://graphemica.com/%C3%91)的文件,但似乎无法弄清楚。当我在notepad ++中打开文件时,它显示为xD1字符,当我在gedit中打开文件时,它显示\ D1。当我在excel中打开文件时,它可以正确显示字符。

现在我正尝试在python中打开文件,遇到字符时它将暂停。我知道我可以输入编码,以便可以正确打开文件,但是我不确定应该使用哪种编码。我的错误是

UnicodeDecodeError:'utf-8'编解码器无法解码位置0的字节0xd1:无效的连续字节

这是我的代码

with codecs.open('tsv.txt', 'r', 'utf8') as my_file:
    for line in my_file:
        print(line)

如果不是utf8,那我应该怎么用?从上面的站点,它没有显示与0xd1编码关联的内容。

1 个答案:

答案 0 :(得分:1)

您可以在表中找到如何以不同的编码方式编码'Ñ'。

您也可以直接在Python中尝试:

>>> 'Ñ'.encode('utf8')
b'\xc3\x91'
>>> 'Ñ'.encode('latin1')
b'\xd1'

您的文件似乎以latin-1编码。