在Python中读取包含未定义字符的csv文件

在Python中读取包含未定义字符的csv文件,python,csv,text,utf-8,ascii,Python,Csv,Text,Utf 8,Ascii,我正在我的Windows计算机上用Python读取CSV文件(ANSI),代码如下: import csv with open('ttest.dat') as csvDataFile: csvReader = csv.reader(csvDataFile, delimiter="\t") for i in csvReader: print(i) 但是,我得到了错误:UnicodeDecodeError:“charmap”编解码器无法解码位置4:字符映射到的字节0

我正在我的Windows计算机上用Python读取CSV文件(ANSI),代码如下:

import csv
with open('ttest.dat') as csvDataFile:
    csvReader = csv.reader(csvDataFile, delimiter="\t")
    for i in csvReader:
        print(i)
但是,我得到了错误:
UnicodeDecodeError:“charmap”编解码器无法解码位置4:字符映射到的字节0x9d

在Notepad++中检查该文件时(在Notepad中将其转换为UTF-8编码后),我看到以下内容:

似乎是
hello
旁边的这些字符引起了问题。当我手动删除它们时,可以读取文件

有没有一种方法可以用Python加载文件,同时显式地告诉它忽略这些奇怪的字符?或者,是否有一种方法可以自动从这些字符中删除文本?我的文件相当大,所以手动查看每一行是不现实的

注意:在R中,我可以使用
read.csv

with open('ttest.dat', encoding="utf8") as csvDataFile:

这将使用UTF-8编码打开文件。

这避免了奇数字符的问题,但现在我无法解析包含字母æ、ø和å的文本,这是挪威字母吗?请尝试
iso-8859-1
。否则,请查阅一些有关该主题的教程。你肯定会找到一些有用的东西。