python excel文件换题头

5 篇文章 0 订阅

最近在整理大批的excel人员数据,但因历史原因,题头写的乱七八遭,导入数据库时时常提醒,就写了个如下函数,统一下表头

# 目录下所有excel换题头
def muHuanTitou(path,biaotou):
    df = pd.read_excel(path, None)
    # 替换Excel 表格内的空单元格,否则在下一步处理中将会报错
    import  datetime
    str_p = datetime.datetime.now()
    dateTime_p = datetime.datetime.strftime(str_p, '%H%M%S')
    writer = pd.ExcelWriter('N'+path[:-4]+str(dateTime_p)+'.xlsx')
    for sh in df.keys():
        fdf = pd.read_excel(path, sh)
        df_list=[]
        fdf.fillna("", inplace=True)
        sjbt=fdf.columns.to_list()
        if len(sjbt)>0:
            bt=biaotou
            xuadd=0
            if len(sjbt)==len(biaotou):
                bt=biaotou
            elif len(sjbt)>len(biaotou):
                for i in range(len(sjbt)-len(biaotou)):
                    bt.append('bt'+str(i))
            else:
                bt=biaotou
                xuadd = len(biaotou)-len(sjbt)

            for i in fdf.index.values:
                # loc为按列名索引 iloc 为按位置索引,使用的是 [[行号], [列名]]
                df_line = fdf.loc[i, fdf.columns].to_dict()
                # print(df_line)
                for i in range(xuadd):
                    newl='bt'+str(i)
                    df_line[newl]=''
                # if
                # df_line['行业'] = sh  # excel的sheet表名为行业 + ';' + df_line['行业']
                # 将每一行转换成字典后添加到列表
                # if df_line['地区'] != '':
                df_list.append(df_line)
            nydf = DataFrame(df_list)
            nydf.to_excel(excel_writer=writer, sheet_name=sh, header=biaotou)
            # print(len(df_list))
    writer.save()
    writer.close()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

信息化未来

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值