在Python中读取包含未定义字符的csv文件
我正在我的Windows计算机上用Python读取CSV文件(ANSI),代码如下:在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
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
。否则,请查阅一些有关该主题的教程。你肯定会找到一些有用的东西。