用Python轻松搞定那些Excel搞不定的事
ztj100 2025-03-20 21:18 7 浏览 0 评论
「工作中的那些Excel难题」
「1. 批量生成复杂报表」
「问题:」
有一个客户列表,你需要每天生成一堆报表,分别保存到不同的文件夹里,手动操作要命!
「解决方案:」
Python一次性搞定!
「代码示例:」
from openpyxl import Workbook
import os
# 创建客户列表
customers = ["Alice", "Bob", "Charlie"]
# 批量生成Excel文件
output_dir = "reports"
os.makedirs(output_dir, exist_ok=True)
for customer in customers:
wb = Workbook()
ws = wb.active
ws.title = "Summary"
ws["A1"] = f"Report for {customer}"
ws["A2"] = "Data goes here..."
wb.save(f"{output_dir}/{customer}_report.xlsx")
print(f"报表已保存到 {output_dir} 文件夹!")
「2. 自动清洗脏数据」
「问题:」
客户提供的Excel文件,数据格式千奇百怪,乱七八糟!你要手动清洗1000多行数据,头都大了。
「解决方案:」
Python自动清洗,效率999倍提升!
「代码示例:」
import pandas as pd
# 模拟脏数据
data = {
"Name": [" Alice ", "BOB", "Charlie "],
"Age": ["25", "twenty-six", "27"],
"Salary": ["10000$", "15000$", "20000$"]
}
df = pd.DataFrame(data)
# 清洗数据
df["Name"] = df["Name"].str.strip().str.title() # 去掉空格并首字母大写
df["Age"] = pd.to_numeric(df["Age"], errors="coerce") # 转为数字,非数字变NaN
df["Salary"] = df["Salary"].str.replace("$", "").astype(int) # 移除$符号并转为整数
print(df)
「3. 合并多个Excel文件」
「问题:」
老板发给你50个文件夹,每个文件夹都有数百个Excel文件,你需要合并它们,疯了吧?
「解决方案:」
Python一行代码跑一片森林。
「代码示例:」
import pandas as pd
import os
# 模拟文件路径
file_paths = ["file1.xlsx", "file2.xlsx", "file3.xlsx"]
# 合并所有文件
combined_df = pd.concat(pd.read_excel(file) for file in file_paths)
combined_df.to_excel("combined.xlsx", index=False)
print("文件已合并为 combined.xlsx!")
「4. 自动创建图表」
「问题:」
你需要从数据中生成各种图表,比如柱状图、折线图,还要改颜色、加标题。Excel每次调整样式都要点来点去。
「解决方案:」
Python自动生成炫酷图表!
「代码示例:」
import pandas as pd
import matplotlib.pyplot as plt
# 模拟数据
data = {
"Department": ["Sales", "HR", "IT", "Finance"],
"Revenue": [100000, 50000, 120000, 70000]
}
df = pd.DataFrame(data)
# 绘制柱状图
plt.bar(df["Department"], df["Revenue"], color="skyblue")
plt.title("Department Revenue")
plt.xlabel("Department")
plt.ylabel("Revenue")
plt.savefig("revenue_chart.png") # 保存为图片
plt.show()
「5. 根据条件筛选并生成新文件」
「问题:」
你的Excel里有十万条数据,现在需要根据某些条件筛选出满足要求的数据,并保存为新的文件,Excel筛选操作很容易卡死。
「解决方案:」
Python轻松筛选并保存。
「代码示例:」
import pandas as pd
# 模拟大数据
data = {
"Name": ["Alice", "Bob", "Charlie", "Daisy", "Edward"],
"Age": [25, 30, 35, 40, 45],
"Department": ["HR", "Sales", "IT", "Finance", "Sales"]
}
df = pd.DataFrame(data)
# 条件筛选:只保留Sales部门的员工
filtered_df = df[df["Department"] == "Sales"]
# 保存筛选后的数据到新文件
filtered_df.to_excel("filtered_data.xlsx", index=False)
print("筛选完成,结果已保存为 filtered_data.xlsx")
如果你对Excel的操作已经让你怀疑人生,是时候学点Python了!
从批量任务到复杂数据处理,从数据清洗到自动化报表,Python都能做到。
相关推荐
- Whoosh,纯python编写轻量级搜索工具
-
引言在许多应用程序中,搜索功能是至关重要的。Whoosh是一个纯Python编写的轻量级搜索引擎库,可以帮助我们快速构建搜索功能。无论是在网站、博客还是本地应用程序中,Whoosh都能提供高效的全文搜...
- 如何用Python实现二分搜索算法(python二分法查找代码)
-
如何用Python实现二分搜索算法二分搜索(BinarySearch)是一种高效的查找算法,适用于在有序数组中快速定位目标值。其核心思想是通过不断缩小搜索范围,每次将问题规模减半,时间复杂度为(O...
- 路径扫描 -- dirsearch(路径查找器怎么使用)
-
外表干净是尊重别人,内心干净是尊重自己,干净,在今天这个时代,应该是一种极高的赞美和珍贵。。。----网易云热评一、软件介绍Dirsearch是一种命令行工具,可以强制获取web服务器中的目录和文件...
- 78行Python代码帮你复现微信撤回消息!
-
来源:悟空智能科技本文约700字,建议阅读5分钟。本文基于python的微信开源库itchat,教你如何收集私聊撤回的信息。...
- 从零开始学习 Python!2《进阶知识》 Python进阶之路
-
欢迎来到Python学习的进阶篇章!如果你说已经掌握了基础语法,那么这篇就是你开启高手之路的大门。我们将一起探讨面向对象编程...
- 白帽黑客如何通过dirsearch脚本工具扫描和收集网站敏感文件
-
一、背景介绍...
- Python之txt数据预定替换word预定义定位标记生成word报告(四)
-
续接Python之txt数据预定替换word预定义定位标记生成word报告(一)https://mp.toutiao.com/profile_v4/graphic/preview?pgc_id=748...
- Python——字符串和正则表达式中的反斜杠('\')问题详解
-
在本篇文章里小编给大家整理的是关于Python字符串和正则表达式中的反斜杠('\')问题以及相关知识点,有需要的朋友们可以学习下。在Python普通字符串中在Python中,我们用'\'来转义某些普通...
- Python re模块:正则表达式综合指南
-
Python...
- python之re模块(python re模块sub)
-
re模块一.re模块的介绍1.什么是正则表达式"定义:正则表达式是一种对字符和特殊字符操作的一种逻辑公式,从特定的字符中,用正则表达字符来过滤的逻辑。(也是一种文本模式;)2、正则表达式可以帮助我们...
- MySQL、PostgreSQL、SQL Server 数据库导入导出实操全解
-
在数字化时代,数据是关键资产,数据库的导入导出操作则是连接数据与应用场景的桥梁。以下是常见数据库导入导出的实用方法及代码,包含更多细节和特殊情况处理,助你应对各种实际场景。一、MySQL数据库...
- Zabbix监控系统系列之六:监控 mysql
-
zabbix监控mysql1、监控规划在创建监控项之前要尽量考虑清楚要监控什么,怎么监控,监控数据如何存储,监控数据如何展现,如何处理报警等。要进行监控的系统规划需要对Zabbix很了解,这里只是...
- mysql系列之一文详解Navicat工具的使用(二)
-
本章内容是系列内容的第二部分,主要介绍Navicat工具的使用。若查看第一部分请见:...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- Whoosh,纯python编写轻量级搜索工具
- 如何用Python实现二分搜索算法(python二分法查找代码)
- 路径扫描 -- dirsearch(路径查找器怎么使用)
- 78行Python代码帮你复现微信撤回消息!
- 从零开始学习 Python!2《进阶知识》 Python进阶之路
- 白帽黑客如何通过dirsearch脚本工具扫描和收集网站敏感文件
- Python之txt数据预定替换word预定义定位标记生成word报告(四)
- 假期苦短,我用Python!这有个自动回复拜年信息的小程序
- Python——字符串和正则表达式中的反斜杠('\')问题详解
- Python re模块:正则表达式综合指南
- 标签列表
-
- idea eval reset (50)
- vue dispatch (70)
- update canceled (42)
- order by asc (53)
- spring gateway (67)
- 简单代码编程 贪吃蛇 (40)
- transforms.resize (33)
- redisson trylock (35)
- 卸载node (35)
- np.reshape (33)
- torch.arange (34)
- node卸载 (33)
- npm 源 (35)
- vue3 deep (35)
- win10 ssh (35)
- exceptionininitializererror (33)
- vue foreach (34)
- idea设置编码为utf8 (35)
- vue 数组添加元素 (34)
- std find (34)
- tablefield注解用途 (35)
- python str转json (34)
- java websocket客户端 (34)
- tensor.view (34)
- java jackson (34)