Python编码错误波兰语字符

时间:2017-06-23 08:25:06

标签: python unicode encoding polish

我有一个我想用Python阅读的.txt文件,它包含波兰语城市名。我使用这段代码(我的脚本有:# - 编码:utf-8 - * - 在第一行):

string='PL.txt'
country=io.open(string,mode=r, encoding='utf-8')
lezer=csv.reader(country,dialect='excel-tab')
my_dict=defaultdict(list)
for record in lezer:
   pc, gemeente= record[0], record[1]
   my_dict[pc].append(gemeente)
 return my_dict

当我使用代码时,它开始运行,然后出现错误: returm codecs.charmap_encode(input,errors,encodeing_table) UnicodeEncodeError:charmap编解码器无法编码位置35中的字符u \'u0144':字符映射到

我在互联网上搜索过,我发现不同的答案总线并不是我需要的答案。 这是关于我理解得很好的角色。基本代码charmap不包含此字符,因此无法对其进行编码。 我使用了另一个编解码器utf16,但随后它映射到了一些奇怪的东西。我还尝试了其他代码,如latin-1,cp437,cp1252。

我也尝试过:

string='PL.txt'
country=io.open(string,mode=r, encoding='utf-8')
lezer=csv.reader(country,dialect='excel-tab')
my_dict=defaultdict(list)
for record in lezer:
   pc, gemeente= record[0], record[1].encode('utf16')
   my_dict[pc].append(gemeente)
 return my_dict

当我查看类型(记录[1])时给出str而不是unicode。与其他波兰人的carachters一样。

0 个答案:

没有答案