作为开发者/数据从业者,日常工作中难免要和 Excel 打交道——批量修改单元格、合并多表数据、生成可视化报表,这些重复劳动往往占用大量时间。Excel 自带的函数虽能解决简单问题,但面对上万行数据或复杂逻辑时,不仅卡顿还容易出错。
而 Python 凭借 pandas 和 openpyxl 等库,能以「代码化」方式实现 Excel 自动化处理,效率提升 10 倍以上。本文将从环境搭建到实战案例,手把手教你用 Python 搞定 Excel 常见需求,新手也能快速上手!
一、环境准备:核心库安装
首先需要安装两个关键库,直接通过 pip 命令执行即可(建议使用 Python 3.7+ 版本):
# 安装 pandas(数据处理核心库,支持 Excel 读写)
pip install pandas
# 安装 openpyxl(处理 .xlsx 格式文件,支持单元格样式、公式等)
pip install openpyxl
# 若需处理 .xls 格式,额外安装 xlrd(注意:xlrd 2.0+ 不支持 .xls,需指定版本)
pip install xlrd==1.2.0
安装完成后,在代码中导入库:
import pandas as pd
from openpyxl.styles import Font, PatternFill # 用于设置单元格样式
二、基础操作:Excel 读写核心用法
1. 读取 Excel 文件
pandas 的 read_excel() 方法支持读取单个工作表、指定列、跳过表头,满足不同场景需求:
# 1. 读取整个 Excel 文件(默认读取第一个工作表)
df = pd.read_excel("数据文件.xlsx")
# 2. 读取指定工作表(通过 sheet_name 指定名称或索引)
df = pd.read_excel("数据文件.xlsx", sheet_name="销售数据") # 按名称
df = pd.read_excel("数据文件.xlsx", sheet_name=1) # 按索引(从 0 开始)
# 3. 读取指定列(通过 usecols 参数)
df = pd.read_excel("数据文件.xlsx", usecols=["日期", "销售额", "地区"])
# 4. 跳过表头(适用于无表头的文件,通过 skiprows 指定行数)
df = pd.read_excel("数据文件.xlsx", skiprows=1, header=None) # header=None 表示无表头
# 查看数据前 5 行,验证读取结果
print(df.head())

