近期应工作需要,需编写一个小程序实现同一目录下Excel文件合并,且要求能够自动选择剔除无用的表头和表尾行,具体实现代码如下。
import os
import pandas as pd
# 将文件读取出来放一个列表里面
pwd = '..\\Excel_Combine_Project\\待合并Excel' # 获取文件目录
# 新建列表,存放文件名
file_list = []
# 新建列表存放每个文件数据(依次读取多个相同结构的Excel文件并创建DataFrame)
dfs = []
begin = int(input("请输入表头所在行:"))-1
Judge = input("表尾是否存在无关行?请输入Y/N:")
if Judge == "Y":
end = int(input("请输入表尾无关行数:"))
end = -1 * end
else:
end = None
for root,dirs,files in os.walk(pwd): # 第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件。
for file in files:
file_path = os.path.join(root, file)
file_list.append(file_path) # 使用os.path.join(dirpath, name)得到全路径
df = pd.read_excel(file_path , header = begin, dtype=str) # 设置指定表头名称
df = df[:end]
print(df.info())
print("Now: " + file + " Merge Comple