如何实现xlsx文件中与csv.reader(...)等效的读取方式?
如何读取XLSX文件(替代CSV模块的用法)
嘿,这个问题我太熟悉了!你说得完全对——csv模块只能处理纯文本的CSV文件,XLSX是Excel的二进制格式,得用专门的库来操作。下面给你两种最常用的解决方案:
方案1:用Pandas(最简便,适合快速读取)
Pandas是数据处理的神器,一行代码就能搞定XLSX读取,还能直接转成DataFrame方便后续处理。首先你得先安装它:
pip install pandas openpyxl
然后读取代码就像这样:
import pandas as pd path = r"mypath\myfile.xlsx" df = pd.read_excel(path) # 如果要按行遍历,和csv.reader类似的用法可以这样: for index, row in df.iterrows(): print(row)
方案2:用OpenPyXL(原生操作Excel,适合精细控制)
如果你不需要Pandas的全功能,只是想单纯读取XLSX的内容,OpenPyXL是专门处理Excel 2010+格式的库,更轻量。先安装:
pip install openpyxl
读取代码示例:
from openpyxl import load_workbook path = r"mypath\myfile.xlsx" wb = load_workbook(filename=path, read_only=True) # read_only模式更高效 ws = wb.active # 获取当前活跃的工作表,也可以用wb['Sheet1']指定表名 # 按行遍历,和csv.reader的用法接近 for row in ws.iter_rows(values_only=True): print(row) # row是一个包含单元格值的元组,和csv.reader返回的行格式类似 wb.close()
两种方案都能完美替代你原来的CSV读取逻辑,根据你的需求选就行啦~
内容的提问来源于stack exchange,提问作者Tms91
相关产品推荐
相关产品推荐

