Python批量处理Excel表格,将多个表格内容合并到一个,提升工作效率!

老板最近做得太过分了。他下班后给我寄了几百张表格,让我把内容合并成一张表格。

[En]

The boss has been going too far recently. He sent me hundreds of forms after work and asked me to merge the contents into one form.

Python批量处理Excel表格,将多个表格内容合并到一个,提升工作效率!
还好我会Python,分分钟就搞定了,这要是换个不会Python的,不得加班到第二天天亮去了~

Python批量处理Excel表格,将多个表格内容合并到一个,提升工作效率!
这样好用的技巧一定要跟大家分享,不用说太多,直接开始吧!
[En]

Such easy-to-use skills must be shared with you, without saying much, let’s start directly!

; 准备工作

我们需要先准备好表格数据,爬虫兄弟可以稍微爬一点,不,你可以让我直接拿到数据。

[En]

We need to prepare the table data first, the crawler brothers can climb a little bit, no, you can ask me to get the data directly.

表格内数据

Python批量处理Excel表格,将多个表格内容合并到一个,提升工作效率!

我在这里只做演示,所以只使用了五个表,今天我们将市级合并到省级。

[En]

I only do the presentation here, so only five tables are used, and today we are merging the municipal level into the provincial level.

本文思路

  1. 将当前文件夹下所有的 excel 汇总到 广东省.xlsx
  2. 添加一个新的字段 城市,字段内容为商铺所在城市,这个字段放在最前面;
  3. 星级为 star_0 的数据全部不要
  4. 只要一条数据中有三个字段为空字段,整条数据都不需要;
  5. 将价格中的 ¥ 符号去掉

代码实现

所有的代码都是和你分享的,我不喜欢隐藏它。

[En]

All the code is shared with you, and I don’t like to hide it.

import glob
import openpyxl
Python学习交流群 815624229

workbook = openpyxl.Workbook()
sheet_total = workbook.active
sheet_total.append(['城市', '门店名称', '星级', '星级得分', '点评总数', '人均消费', '口味', '环境', '服务', '链接网址', '分类', '商圈', '详细地址', '推荐菜'])

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')

效果

刚从烤箱里出来。非常新鲜。

[En]

It’s just out of the oven. It’s very fresh.

Python批量处理Excel表格,将多个表格内容合并到一个,提升工作效率!
如您所见,数据已成功合并到一个表中。
[En]

As you can see, the data has been successfully merged into a table.

Python批量处理Excel表格,将多个表格内容合并到一个,提升工作效率!

记住要喜欢你最喜欢的朋友的收藏。

[En]

Remember to like the collection of your favorite friends.

关注我分享更多技术干货
直接拿代码就等于嫖娼,喜欢收藏就是真理。

[En]

Directly take the code is equal to whoring, like the collection is the truth.

您的支持是我更新换代的动力!

[En]

Your support is the driving force for my renewal!

Original: https://www.cnblogs.com/hahaa/p/16145236.html
Author: 轻松学Python
Title: Python批量处理Excel表格,将多个表格内容合并到一个,提升工作效率!

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/499956/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • numpy(同pytorch-tensor)简单行列操作

    学pytorch的时候发现很多地方跟numpy是很像的,所以补了一下基础知识 当想搞清楚一个库的用法的时候,百度或者csdn上看很多例子确实不如直接看原库解析来得更快 一、切片 直…

    Python 2023年8月25日
    078
  • Gurobi教程-从入门到入土-一篇顶万篇

    再详尽的帮助文档也不如举几个示例能让人看得明白,于是想通过一个帖子涵盖Gurobi的所有操作。 软件下载、免学术ip申请学术许可,参见 Gurobi中国官方网站。具体过程简单且网上…

    Python 2023年8月1日
    064
  • RANSAC算法(原理及代码实现+迭代次数参数自适应)

    RANSAC算法 前言 算法流程 Python代码 RANSAC算法迭代参数的自适应 前言 随机样本一致性 (RANSAC) 是一种迭代方法,用于从一组包含异常值的观察数据中估计数…

    Python 2023年8月25日
    067
  • 自动化测试报告(allure/html)

    pytest有两种生成测试报告的方法(html和allure),今天就给大家一一介绍下 html 一.pytest-html基本语法 1.安装:pip install pytest…

    Python 2023年5月24日
    068
  • 保姆级Windows下载安装PaddleGAN并使用教程

    安装paddlepaddle 1、确保python版本3.8以上,cmd窗口输入 python –version 2、确保pip版本20以上,cmd窗口输入 python -m …

    Python 2023年10月10日
    036
  • apache2.4 + django + windows10 自动化部署

    在django项目中建立一个 webhooks url 路由, 在该路由下异步执行自动化部署脚本 在未部署的时候, 访问该路由 是没有问题的 成功执行了脚本脚本涉及两个内容 拉取更…

    Python 2023年8月6日
    042
  • Matplotlib保存图片到文件

    抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 Original: https://blo…

    Python 2023年8月3日
    076
  • 【课程笔记】中科大凸优化(二)

    根据线性组合的不同系数要求,将集合进一步划分为仿射集、凸集、凸锥 仿射集 – 等价定义: 线性方程组的解集(C={x \mid A x=b})是仿射集,对应的子空间是(…

    Python 2023年10月26日
    043
  • python 多进程怎么使用redis_【干货】Python 多进程使用技巧

    技巧1: 两个列表的两层循环并行处理 使用场景:比如两层for循环处理数据,此时可以使用生成器返回pair对,之后进行多进程处理,示例代码如下: import multiproce…

    Python 2023年8月8日
    043
  • helm本地debug template渲染小记

    前提条件1, 安装helm2,要能连接的k8s3,本地有完成charts文件目录 具体步骤 本文因为是在项目流程中helm渲染出的deployment语法报错或者最终生成的不符合预…

    Python 2023年10月27日
    036
  • python(模块)xlwt

    目录 一、xlwt简介 二、xlwt语法 * 1、模块安装 2、模块导入 3、向xls文件中写入内容 4、设置写入文件的格式 – 4.1 字体设置(font) 4.2 …

    Python 2023年8月1日
    064
  • 关于Retinex理论的一些理解

    目前一直在参与关于Retinex的相关课题,并完成了许多模型的构建,本文以个人的见解介绍Retinex的相关理论1. 基本原理Retinex理论是上世纪八十年代由land等人提出的…

    Python 2023年10月1日
    045
  • Python — Numpy库的使用

    要点:numpy是用于处理含有同种元素的多维数组运算的第三方库。 Python标准库中提供了一个array类型,用于保存数组类型数据,然而这个类型不支持多维数据,处理函数也不够丰富…

    Python 2023年8月23日
    053
  • 基于DEM的坡度坡向分析

    坡度坡向分析方法 坡度(slope)是地面特定区域高度变化比率的量度。坡度的表示方法有百分比法、度数法、密位法和分数法四种,其中以百分比法和度数法较为常用。本文计算的为坡度百分比数…

    Python 2023年11月2日
    044
  • docker 部署 flask 项目

    这里写自定义目录标题 docker 部署 flask 项目 * 1.拉取python镜像构建容器 2.进入容器下载flask相关依赖 3.运行flask项目 4.postman输入…

    Python 2023年8月9日
    050
  • python dataframe批量将列名加后缀_pandas dataframe:从整个datafram的所有单元格值中添加和删除前缀/后缀…

    您可以使用pd.Series的apply和str.strip方法:In [13]: df Out[13]: a b c 0 dog quick the 1 lazy lazy fo…

    Python 2023年8月21日
    064
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球