首页 > 解决方案 > 为什么我的 CSV 文件读作“UTF-8”但实际上是“Latin-1”

问题描述

我的代码输出显示编码为“UTF-8”。但是,事实证明我的文件的编码实际上是“Latin-1”。为什么会这样?

输入:

with open("laptops.csv") as l:
    print(l)

import pandas as pd
laptops = pd.read_csv("laptops.csv", encoding="UTF-8")
print(laptops)

输出:

<_io.TextIOWrapper name='laptops.csv' mode='r' encoding='UTF-8'>
---------------------------------------------------------------------------
UnicodeDecodeError                        Traceback (most recent call last)
<ipython-input-1-c399168ffe6d> in <module>
      3 
      4 import pandas as pd
----> 5 laptops = pd.read_csv("laptops.csv", encoding="UTF-8")
      6 print(laptops)
...

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 132936: invalid continuation byte

标签: pythonpandascsvencoding

解决方案


推荐阅读