Python 自动化办公实战:Excel 处理 – 基础篇

释放双眼,带上耳机,听听看~!
欢迎来到今天的 Python 实战教程!今天我们来学习 Python 自动化办公之 Excel 处理。 一、环境准备 1.1 安装库 pip install openpyxl pandas xlrd xlwt 1.2 库的选择 openpy...

欢迎来到今天的 Python 实战教程!今天我们来学习 Python 自动化办公之 Excel 处理。

Python 自动化办公实战:Excel 处理 - 基础篇

一、环境准备

1.1 安装库

pip install openpyxl pandas xlrd xlwt

1.2 库的选择

  • openpyxl:读写.xlsx 文件
  • pandas:数据处理和分析
  • xlrd/xlwt:读写.xls 文件(旧格式)

二、读取 Excel 文件

2.1 使用 openpyxl

from openpyxl import load_workbook

# 加载工作簿
wb = load_workbook('data.xlsx')

# 选择工作表
ws = wb['Sheet1']

# 读取单元格
value = ws['A1'].value

# 遍历行
for row in ws.iter_rows():
    for cell in row:
        print(cell.value)

2.2 使用 pandas

import pandas as pd

# 读取 Excel
df = pd.read_excel('data.xlsx')

# 查看数据
print(df.head())
print(df.columns)

# 选择列
names = df['姓名']

三、写入 Excel 文件

3.1 创建新文件

from openpyxl import Workbook

wb = Workbook()
ws = wb.active
ws.title = "数据表"

# 写入数据
ws['A1'] = "姓名"
ws['B1'] = "年龄"
ws.append(["张三", 25])
ws.append(["李四", 28])

wb.save('output.xlsx')

3.2 使用 pandas 写入

import pandas as pd

data = {
    '姓名': ['张三', '李四'],
    '年龄': [25, 28],
    '城市': ['北京', '上海']
}

df = pd.DataFrame(data)
df.to_excel('output.xlsx', index=False)

四、数据处理实战

4.1 数据筛选

# 筛选年龄大于 25 的记录
filtered = df[df['年龄'] > 25]

# 多条件筛选
filtered = df[(df['年龄'] > 25) & (df['城市'] == '北京')]

4.2 数据统计

# 平均值
avg_age = df['年龄'].mean()

# 分组统计
grouped = df.groupby('城市')['年龄'].mean()

4.3 数据合并

# 合并两个 Excel
df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')

# 横向合并
merged = pd.merge(df1, df2, on='姓名')

# 纵向合并
combined = pd.concat([df1, df2])

五、批量处理

5.1 批量读取

import os
import pandas as pd

files = [f for f in os.listdir('.') if f.endswith('.xlsx')]
all_data = []

for file in files:
    df = pd.read_excel(file)
    all_data.append(df)

combined = pd.concat(all_data)

5.2 批量写入

departments = ['销售部', '技术部', '财务部']

for dept in departments:
    df = get_department_data(dept)
    df.to_excel(f'{dept}_报表.xlsx', index=False)

六、格式化与样式

from openpyxl.styles import Font, PatternFill

# 设置字体
ws['A1'].font = Font(bold=True, color='FF0000')

# 设置背景色
ws['A1'].fill = PatternFill(start_color='FFFF00', fill_type='solid')

# 设置列宽
ws.column_dimensions['A'].width = 20

七、总结

Python 处理 Excel 可以大幅提升办公效率。建议多实践。


关注我们获取更多 Python 实战教程!

声明:本站所有文章,如无特殊说明或标注,均来自于互联网,下载的软件和资源请在24小时之内删除,本站提供的资源只可作为下载、学习交流使用,其版权归原作者所有,其产生的任何后果均自己承担,本站不作任何责任承担,具体可查看本站免责声明。如已声明或标注原创,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理,客服链接:点此前往,投诉邮箱:nc08wlkj@163.com

给TA赞赏
共{{data.count}}人
人已赞赏
技术教程

高效文件管理与备份策略

2026-3-27 10:23:28

技术教程编程代码

Python 文件批量处理与自动化 - 进阶篇

2026-3-30 10:05:57

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索