python pandas合并单元格_利用Python pandas对Excel进行合并的方法示例

前言在网上找了很多Python处理Excel的方法和代码,都不是很尽人意,所以自己综合网上各位大佬的方法,自己进行了优化,具体的代码如下。博主也是新手一枚,代码肯定有很多需要优化的地方,欢迎各位大佬提出建议~代码我自己已经用了一段时间,可以直接拿去用主要功能按行合并 ,即保留固定的表头(如前几行),实现多个Excel相同格式相同名字的表单按纵轴合并;按列合并。 即保留固定的首列,实现多个Excel...
摘要由CSDN通过智能技术生成

前言

在网上找了很多Python处理Excel的方法和代码,都不是很尽人意,所以自己综合网上各位大佬的方法,自己进行了优化,具体的代码如下。

博主也是新手一枚,代码肯定有很多需要优化的地方,欢迎各位大佬提出建议~

代码我自己已经用了一段时间,可以直接拿去用

主要功能

按行合并 ,即保留固定的表头(如前几行),实现多个Excel相同格式相同名字的表单按纵轴合并;

按列合并。 即保留固定的首列,实现多个Excel相同格式相同名字的表单按横轴合并;

表单集成 ,实现不同Excel中相同sheet的集成(即不汇总,仅集成到同一个新的Excel中)。此处的代码稍微改一下即可实现不同Excel中所有sheet的集成;

自动检测所需合并的sheet名称是否出现在所有的目标文件中,如果不是则予以提示 ;

sheet选择、表头选择、功能选择界面实现可视化;

合并后进行简单的缺省值处理、格式处理

解决MacOS系统下文件目录中出现.DS_Store隐藏文件导致程序出错的bug。

用到的库

pandas 、tkinter 、 pathlib、os 、 xlrd

代码

import pandas as pd

import tkinter as tk

from tkinter import filedialog

import pathlib

import os

import xlrd

# 选择文件夹对话框,窗口交互,打开选择窗口

filedirectory = filedialog.askdirectory()

p1 = pathlib.Path(filedirectory) # 该部分主要为了获取目标路径下的文件名

print(p1)

bookname1 = os.listdir(p1) # 返回目标文件夹下的所有文件名

if ".DS_Store" in bookname1:

bookname1.remove('.DS_Store')

# 删除文件名里的.xlsx

bookname = []

for n in bookname1:

n1 = list(n) # 把字符变成列表

for i in range(5): # 因为去除的是.XSLX,5个字符,可以根据实际需要修改

n1.pop() # 依次删除最后一个元素

n2 = ''.join(n1) # 把列表变成字符

bookname.append(n2)

excles = p1.rglob('*.xlsx') # 类似于os.work,能够返回目标路径下的文件路径,并且可以添加条件

excelar

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值