关于python:当我想读取文本文件时,Unicode解码错误

Unicode decode error when I wanted to read a text file

我有一个匈牙利文的文件,我想用代码修改它,但它有问题。这是我的简单代码:

1
2
3
4
5
6
7
f = open('nametext','r')

text=f.read()

print(text)

f.close()

名称文本文件包含以下字符串:

1
2
3
4
5
6
Bevallás ipar?zési adófelt?ltési k?telezettségr?l 2013  
Gépjárm?adó-kedvezmény mentesség bevallás 2013  
Helyi ipar?zési adóbevallás 2013    
Idegenforgalmi adóbevallás 2013
Kommunális adóbevallás 2013
Talajterhelési díj bevallás 2013

我收到一条错误消息,如下所示:

1
2
3
4
5
Traceback (most recent call last):

  File"python", line 2, in <module>

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe1 in position 6: invalid continuation byte

位置6是文本中的第7个字符什么是匈牙利字母:?

如何编译它?我已经在repl.it编译了这个文件。我对Ruby有几乎相同的问题。文本编码有问题,但我仍然没有解决方案。


在上一个问题中,您声明文件使用ISO-8859-2编码。因此,您需要在对open()的调用中指定此编码:

1
f = open('nametext', 'r', encoding='iso-8859-2')