Python自动化办公:27行代码实现将多个Excel表格内容批量汇总合并到一个表格
序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0)
老板最近越来越过分了,快下班了发给我几百个表格让我把内容合并到一个表格内去。
还好我会Python,分分钟就搞定了,这要是换个不会Python的,不得加班到第二天天亮去了~
这么好用的技能,必须分享给大家,话不多说,咱们直接开始!
准备工作 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0)
咱们需要先准备表格数据,会爬虫的兄弟可以自己爬一点,不会的,可以找我直接拿数据。
表格内数据

我这里只做展示,所以只用了五个表,咱们今天是将市级合并为省级。
本文思路
- 将当前文件夹下所有的 excel 汇总到 广东省.xlsx
- 添加一个新的字段 城市,字段内容为商铺所在城市,这个字段放在最前面;
- 星级为 star_0 的数据全部不要
- 只要一条数据中有三个字段为空字段,整条数据都不需要;
- 将价格中的 ¥ 符号去掉
代码实现
全部代码都分享给大家,咱不喜欢藏着掖着。
python学习资料交流群:660193417###
import glob
import openpyxl
workbook = openpyxl.Workbook()
sheet_total = workbook.active
sheet_total.append(['城市', '门店名称', '星级', '星级得分', '点评总数', '人均消费', '口味', '环境', '服务', '链接网址', '分类', '商圈', '详细地址', '推荐菜'])
python学习资料交流群:660193417###
def count_none(line):
"""返回空内容的数据"""
count = 0
for d in line:
if not d:
count += 1
return count
filenames = glob.glob('*/*.xlsx')
for filename in filenames:
# print(filename)
city = filename.split('.')[0].split('\\')[-1]
workbook_temp = openpyxl.load_workbook(filename)
sheet = workbook_temp.active
for row in sheet.iter_rows(min_row=2, min_col=1, max_col=sheet.max_column, max_row=sheet.max_row):
row_data = [col.value for col in row]
if row_data[1] == 'star_0':
continue
# 定义一个方法判断空字段的数量
if count_none(row_data) >= 3:
continue
# 去掉平均价格中的 ¥
if row_data[4]:
row_data[4] = row_data[4].strip('¥')
row_data.insert(0, city)
# print(row_data)
sheet_total.append(row_data)
# break # 调试只处理一个
workbook.save('广东省.xlsx')
效果
还是刚出炉的,非常新鲜。
这我做了筛选,不然全是显示一个地方了。
可以看到,数据成功的合并到一个表格去了。
喜欢的小伙伴记得点赞收藏呀~
关注我分享更多技术干货
直接拿走代码等于白嫖,点赞收藏才是真情…
你们的支持是我更新的动力!
Python自动化办公:27行代码实现将多个Excel表格内容批量汇总合并到一个表格的更多相关文章
- Python:27行代码实现将多个Excel表格内容批量汇总合并到一个表格
序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 老板最近越来越过分了,快下班了发给我几百个表格让我把内容合并到一个表格内去.还好我会Python,分分钟 ...
- Python自动化办公知识点整理汇总
知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却 ...
- 20210105 - python自动化办公简介
新的一年开始了, 计划每周至少更新三篇博客. 人生苦短,如果不做改变,人生很快会过去!2021年寻求改变,加油! python自动化办公: 1.相关工具与环境的安装概要: 需要用到python(一种开 ...
- Python将多个excel表格合并为一个表格
Python将多个excel表格合并为一个表格 生活中经常会碰到多个excel表格汇总成一个表格的情况,比如你发放了一份表格让班级所有同学填写,而你负责将大家的结果合并成一个.诸如此类的问题有很多.除 ...
- Python爬虫教程(16行代码爬百度)
最近在学习python,不过有一个正则表达式一直搞不懂,自己直接使用最笨的方法写出了一个百度爬虫,只有短短16行代码.首先安装必背包: pip3 install bs4 pip3 install re ...
- python自动化,使用unittest对界面操作,读取excel表格数据输入到页面查询结果,在把结果保存到另外一张excel中
# -*- coding: utf-8 -*-from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom ...
- appium+python自动化44-appium命令行模式
前言 appium desktop有个客户端版本,每次运行脚本的时候都要去双击启动才能运行,很显然不太方便,影响效率.那么有没什么办法不启动桌面程序就能运行呢,比如cmd命令行执行? 环境: appi ...
- 《Python编程快速上手 —让繁琐工作自动化》|百度网盘免费下载|Python自动化办公
Python编程快速上手—让繁琐工作自动化 提取码:u8vj 如今,人们面临的大多数任务都可以通过编写计算机软件来完成. Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言.通过 P ...
- Python自动化办公第三方库xlwt
Python向excel表格写入内容,首先安装第三方库: pip3 install xlwt 代码实例(结合xlrd): #!usr/bin/env python3 #!-*-coding=utf-8 ...
随机推荐
- Codeforces Round #704 (Div. 2), problem: (C) Maximum width还是要多学习
Problem - C - Codeforces 看清题目要求, 最重要部分在第二段. 大佬最后给出的代码果然简单, 思路简单化, 未必非要把答案在一个大括号里全部完成, 两个指针同时跑,中间加了一堆 ...
- OpenHarmony 3.1 Beta 样例:使用分布式菜单创建点餐神器
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点) 刘丽红 随着社会的进步与发展,科技手段的推陈出新,餐饮行业也在寻求新的突破与变革,手机扫描二维码点餐系统已经成为餐饮行 ...
- 超越iTerm! 号称下一代终端神器,功能贼强大!
程序员的一生,用的最多的两个工具,一个是代码编辑器(Code Editor),另外一个就是命令行终端工具(Terminal).这两个工具对于提高开发效率至关重要. 代码编辑器在过去的 40 年里不断进 ...
- python学习-Day27
目录 今日内容详细 动态方法与静态方法 动态方法 绑定给对象的方法 绑定给类的方法 静态方法 继承 继承的含义 继承的目的 继承的基本使用 继承的本质 名字的查找顺序 不继承的情况下 单继承的情况下 ...
- git 配置别名简化命令行和删除别名
废话不多说直接上添加别名语法 加上--global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用. git config --global alias.<自己想要的命令行> & ...
- 使用fastai训练的一个性别识别模型
在学习了python中的一些机器学习的相关模块后,再一次开始了深度学习之旅.不过与上次的TensorFlow框架不同,这一次接触的是fast.ai这样一个东西.这个框架还不稳定,网上也没有相关的中文文 ...
- Linux 或 Windows 上实现端口映射
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 通常服务器会有许多块网卡,因此也可能会连接到不同的网络, ...
- python+pytest接口自动化(15)-日志管理模块loguru简介
python自带日志管理模块logging,使用时可进行模块化配置,详细可参考博文Python日志采集(详细). 但logging配置起来比较繁琐,且在多进行多线程等场景下使用时,如果不经过特殊处理, ...
- python3修改HTMLTestRunner,生成有截图的测试报告,并发送测试邮件(二)
3. 如何将第一步得到的地址和名称 输入 进第二步里的表格中呢... 用上述查找元素的方法,发现HTMLTestRunner.py中REPORT_TEST_WITH_OUTPUT_TMPL是用来输出测 ...
- GDB调试小白教程
1.GDB是什么? 想必很多人都用过windows下各种编译器软件的调试功能,例如Visio Studio里面"断点"."开始调试"."逐语句&quo ...