You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

解决pd.read_csv的utf-8解码错误:无法解码字节0xa0问题

解决CSV文件UTF-8解码错误的方案

出现'utf-8' codec can't decode byte 0xa0...错误,是因为你的CSV文件并非UTF-8编码,0xa0是不间断空格字符,常见于Windows系统的cp1252或latin-1编码中。以下是几种可行的解决方法:

方法一:直接指定常见编码尝试

直接在pd.read_csv()中添加encoding参数,优先尝试cp1252或latin-1:

from google.colab import drive
import pandas as pd

drive.mount('/content/drive')
path = "/content/drive/MyDrive/Colab Notebooks/Meteo.csv"

# 尝试cp1252编码(Windows环境下生成的文件常用)
Meteo = pd.read_csv(path, parse_dates=[['Date', 'Time']], encoding='cp1252')
Meteo.head()

如果上述代码仍报错,换用latin-1编码试试:

Meteo = pd.read_csv(path, parse_dates=[['Date', 'Time']], encoding='latin-1')

方法二:自动检测文件编码

如果不确定具体编码,可以用chardet库自动检测:

# 先安装chardet工具库
!pip install chardet

import chardet
import pandas as pd
from google.colab import drive

drive.mount('/content/drive')
path = "/content/drive/MyDrive/Colab Notebooks/Meteo.csv"

# 读取文件前10000字节检测编码
with open(path, 'rb') as f:
    detect_result = chardet.detect(f.read(10000))

# 打印检测到的编码
print(f"检测到的文件编码:{detect_result['encoding']}")

# 使用检测到的编码读取文件
Meteo = pd.read_csv(path, parse_dates=[['Date', 'Time']], encoding=detect_result['encoding'])
Meteo.head()

内容的提问来源于stack exchange,提问作者Ili

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 13:05:23