从文本文件导入特殊字符(Python 3.3)

时间:2013-12-26 17:44:42

标签: csv python-3.x ascii

我正在从文本文件中读取数据。

import csv
BildeDB = []
with open('bilder.txt', newline='') as inputfile:
    for row in csv.reader(inputfile):
        BildeDB.append(row)

文本文件包含一些挪威字符,导致导入字符Æ,Ø和Å时出现问题。它们被替换为A~和A ......

搜索stackoverflow建议了这个解决方案:添加

sys.setdefaultencoding('latin-1')

位于最顶层,但显然不是有效属性:

AttributeError: 'module' object has no attribute 'setdefaultencoding'

关于如何导入更成功的任何其他想法?

2 个答案:

答案 0 :(得分:2)

使用encoding函数的open()参数。

答案 1 :(得分:0)

为jwalker +1。原因是从文本模式打开的文件中读取必须生成unicode字符串。为此,必须给出文件编码。