小白必看:10分钟学会用Python自动处理Excel表格

小白必看:10分钟学会用Python自动处理Excel表格

基础准备(只需2分钟)

安装必要工具

# 在命令行输入(Windows用户按Win+R,输入cmd)

pip install pandas openpyxl

准备你的第一个Excel文件

创建一个名为 data.xlsx 的Excel文件,包含以下数据:

姓名

销售额

部门

日期

张三

5000

销售部

2026-01-1

李四

7800

技术部

2026-01-1

王五

3200

销售部

2026-01-1

______

核心操作演示(6分钟掌握)

1️⃣ 读取Excel文件(1分钟)

import pandas as pd

# 读取Excel文件

df = pd.read_excel('data.xlsx')

print(“原始数据:”)

print(df)

2️⃣ 数据筛选(1分钟)

# 筛选销售部员工

sales_dept = df[df['部门'] == '销售部']

print(”
销售部员工:”)

print(sales_dept)

# 筛选销售额大于4000的员工

high_sales = df[df['销售额'] > 4000]

print(”
高销售额员工:”)

print(high_sales)

3️⃣ 数据计算(1分钟)

# 计算总销售额和平均销售额

total_sales = df['销售额'].sum()

avg_sales = df['销售额'].mean()

print(f”
总销售额:{total_sales}元”)

print(f”平均销售额:{avg_sales:.2f}元”)

# 按部门汇总

dept_summary = df.groupby('部门')['销售额'].sum()

print(”
各部门销售额汇总:”)

print(dept_summary)

4️⃣ 新增列数据(1分钟)

# 添加绩效评级

def get_performance_level(sales):

if sales >= 7000:

return '优秀'

elif sales >= 4000:

return '良好'

else:

return '待改善'

df['绩效评级'] = df['销售额'].apply(get_performance_level)

print(”
添加绩效评级后:”)

print(df)

5️⃣ 数据排序与筛选(1分钟)

# 按销售额降序排列

sorted_df = df.sort_values('销售额', ascending=False)

print(”
按销售额排序:”)

print(sorted_df)

# 获取Top2员工

top2 = df.nlargest(2, '销售额')

print(”
销售额Top2:”)

print(top2)

6️⃣ 保存结果(1分钟)

# 保存到新Excel文件

df.to_excel('processed_data.xlsx', index=False)

# 保存多个工作表

with pd.ExcelWriter('分析报告.xlsx') as writer:

df.to_excel(writer, sheet_name='原始数据', index=False)

sales_dept.to_excel(writer, sheet_name='销售部数据', index=False)

dept_summary.to_excel(writer, sheet_name='部门汇总')

print(“✅ 处理完成!已生成新文件:”)

print(“- processed_data.xlsx”)

print(“- 分析报告.xlsx”)

______

实战案例:自动生成月度报表(2分钟)

import pandas as pd

from datetime import datetime

def generate_monthly_report():

# 读取数据

df = pd.read_excel('sales_data.xlsx')

# 1. 计算关键指标

total = df['销售额'].sum()

avg = df['销售额'].mean()

top_salesman = df.loc[df['销售额'].idxmax()]

# 2. 部门分析

dept_stats = df.groupby('部门').agg({

'销售额': ['sum', 'mean', 'count']

})

# 3. 创建报告DataFrame

report_data = {

'统计项目': ['总销售额', '平均销售额', '销售冠军', '日期'],

'数值': [total, f”{avg:.2f}”, top_salesman['姓名'], datetime.now().strftime('%Y-%m-%d')]

}

report_df = pd.DataFrame(report_data)

# 4. 保存报告

with pd.ExcelWriter(f'月度报告_{datetime.now().strftime(“%Y%m”)}.xlsx') as writer:

report_df.to_excel(writer, sheet_name='关键指标', index=False)

dept_stats.to_excel(writer, sheet_name='部门分析')

df.to_excel(writer, sheet_name='原始数据', index=False)

print(” 月度报告生成成功!”)

# 运行函数

generate_monthly_report()

______

实用技巧锦囊

批量处理多个文件

import os

# 批量处理当前文件夹所有Excel文件

for file in os.listdir('.'):

if file.endswith('.xlsx'):

df = pd.read_excel(file)

# 你的处理代码…

处理复杂表格

# 读取特定工作表

df = pd.read_excel('data.xlsx', sheet_name='Sheet2')

# 读取特定范围(A1到D10)

df = pd.read_excel('data.xlsx', usecols='A:D', nrows=10)

# 处理多个工作表

all_sheets = pd.read_excel('data.xlsx', sheet_name=None) # 读取所有

常见问题解决

# 1. 处理中文乱码

df = pd.read_excel('data.xlsx', engine='openpyxl')

# 2. 处理日期格式

df['日期'] = pd.to_datetime(df['日期'])

# 3. 填充空值

df.fillna(0, inplace=True) # 用0填充

df.fillna(method='ffill', inplace=True) # 用前一个值填充

______

下一步学习提议

  1. 扩展学习:
  2. 学习 openpyxl 库进行更精细的格式控制
  3. 尝试用 matplotlib 将数据可视化
  4. 了解如何使用 schedule 库实现定时自动运行
  5. 实战项目:
  6. 将重复的周报/月报自动化
  7. 批量整理多个Excel文件的数据
  8. 自动从数据库导出数据生成报表

______

福利:完整脚本模板

“””

Excel自动处理脚本模板

保存为 process_excel.py 即可使用

“””

import pandas as pd

import sys

def main():

# 1. 读取文件

try:

df = pd.read_excel(sys.argv[1] if len(sys.argv) > 1 else 'data.xlsx')

except FileNotFoundError:

print(“❌ 请将Excel文件放在同一目录下”)

return

# 2. 数据处理(按需修改)

print(f”共读取到 {len(df)} 条数据”)

# 示例:筛选并计算

result = df.groupby('部门')['销售额'].sum()

# 3. 保存结果

output_file = 'result.xlsx'

result.to_excel(output_file)

print(f”✅ 处理完成!结果已保存到 {output_file}”)

if __name__ == “__main__”:

main()

______

使用提示:

  1. 将以上代码复制到VSCode、PyCharm或Jupyter Notebook中运行
  2. 确保Excel文件与Python脚本在同一目录
  3. 遇到报错时,复制错误信息到搜索引擎查找解决方案

小白必看:10分钟学会用Python自动处理Excel表格

目前,你已经掌握了用Python自动化处理Excel的核心技能!从今天起,告别繁琐的手工操作吧!

© 版权声明

相关文章

暂无评论

none
暂无评论...