Python-读取CSV UnicodeError

我已经从Kaggle-https://www.kaggle.com/ngyptr/python-nltk-sentiment-analysis中导出了CSV。但是,当我尝试遍历文件时,收到与某些无法编码的字符有关的unicode错误。

File "C:\Program Files\Python35\lib\encodings\cp850.py",line 19,in encode
return codecs.charmap_encode(input,self.errors,encoding_map)[0]

UnicodeEncodeError:'charmap'编解码器无法对位置264中的字符'\ u2026'进行编码:字符映射至

我在打开文件时启用了utf-8编码,我认为该文件会解码ASCII字符。显然不是。

我的代码:

with open("sentimentdataset.csv","r",encoding="utf-8",errors='ignore',newline='') as file:
    reader = csv.reader(file)-
    for row in reader:
        if row:
            print(row)
            if row[sentimentCsvColumn] == sentimentScores(row[textCsvColumn]):
                accuracyCount += 1
    print(accuracyCount)
yaddchg 回答:Python-读取CSV UnicodeError

在打印行时,这是一个 encode 错误,与读取实际CSV无关。

您的Windows终端采用CP850编码,不能代表所有内容。

您可以在这里做一些事情。

  • 一种简单的方法是将PYTHONIOENCODING环境变量设置为一个组合,这将破坏它无法表示的内容。 set PYTHONIOENCODING=cp850:replace在运行Python之前将让Python用问号替换CP850中无法代表的字符。
  • 在运行Python之前,将终端编码更改为UTF-8:chcp 65001
  • 在打印之前用手对事物进行编码:print(str(data).encode('ascii','replace'))
  • 不要打印东西。
本文链接:https://www.f2er.com/3122401.html

大家都在问