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

Python读取大CSV遇编码错误,求无循环提取行数据转列表方案

解决CSV读取UnicodeDecodeError并高效提取行数据

1. 修复UnicodeDecodeError错误

报错里的0xe5对应西欧语言的å字符,说明你的CSV文件不是UTF-8编码,大概率用的是Latin-1(ISO-8859-1)或CP1252编码。修改read_csv的encoding参数就能解决:

import pandas as pd
# 优先用latin-1编码读取,覆盖多数西欧语言场景
data = pd.read_csv('BM1-2022-Gruppe_18_stål_8mm.csv', encoding='latin-1')

如果上面的代码还是报错,换成encoding='cp1252'试试,这是Windows系统常用的西欧字符编码。

2. 高效提取某一行转列表(无需for循环)

针对600+列的大型文件,直接用pandas的内置索引方法就能快速提取,完全不需要循环:

方式一:按行号提取(索引从0开始)

比如要提取第3行(对应索引2):

# 直接转成列表
target_row = data.iloc[2].tolist()

方式二:按自定义行标签提取

如果你的行有自定义索引标签:

# 替换成实际的行标签
target_row = data.loc["你的行标签"].tolist()

极致优化:只加载目标行(超大型文件首选)

如果文件大到加载全量数据占内存,直接跳过无关行,只读取目标行,效率拉满:

# 提取第3行:跳过前2行,仅读取1行
target_row_df = pd.read_csv('BM1-2022-Gruppe_18_stål_8mm.csv', encoding='latin-1', skiprows=2, nrows=1)
target_row = target_row_df.iloc[0].tolist()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 00:20:50