【问题标题】:Importing special characters from txt-file (Python 3.3)从 txt 文件导入特殊字符 (Python 3.3)
【发布时间】:2013-12-26 17:44:41
【问题描述】:

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

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'

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

【问题讨论】:

  • 我相信在文本模式下打开可以带一个编码参数。

标签: csv python-3.x ascii


【解决方案1】:

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

【讨论】:

  • 非常感谢!添加了 open('bilder.txt', newline='', encoding='utf-8') 作为输入文件:这似乎有效!
【解决方案2】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-02
    • 1970-01-01
    • 2015-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多