吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3502|回复: 20
收起左侧

[Python 转载] python工作简化-合并工作簿

[复制链接]
a2556483812 发表于 2020-5-14 13:30
本帖最后由 a2556483812 于 2020-5-15 19:41 编辑

1、因为平时工作有大量的工作簿什么的需要合并,自己呢刚好学了些python,就利用python写了一个表格合并的程序分享给大家
2、可能是因为实力不足的原因,功能可能有不够完善的地方,多多谅解
3、希望有帮到大家的地方4、考虑到有些人不会封装,所以呢最下面有打包的exe,但是不知道为啥pyinstaller打包出来的exe,杀毒软件都会误报,下面附上python代码




[Python] 纯文本查看 复制代码
import os
import xlwt,xlrd,csv
x = os.listdir()
try:#没有这个表格就报错
    x.remove('合并表格.xls')
    print('---------------------')
except Exception as e:
    print('---------------------')
y = []
def get_xls(ghj):#判断文件是否存在的,是的话就重新建一个表格
    wqe = 0
    f = "".join(ghj)[0:4]
    if os.path.exists(ghj):
        wqe += 1
        return f+str(wqe)+".xls"
def read(xls):#将表格内容写入列表--修复不能读取其他工作表的功能
    bm = xls.split('.')[0]
    data = xlrd.open_workbook(xls)
    book = data.sheet_names()
    for xlss in book:
        w = data.sheet_by_name(xlss)
        for h in range(w.nrows):
            b = w.row_values(h)
            b.insert(0, bm)#写入工作簿名称
            b.insert(1,xlss)#写入工作表名称
            y.append(b)
bn = []
def gh(bn):#列表去重函数
    news_ids = []
    for id in bn:
        if id not in news_ids:
            news_ids.append(id)
    return news_ids
def wir(font,wr):#列表内容写入表格
    hi = 0
    fontt = 0
    workboob = xlwt.Workbook(encoding="utf-8")
    worksheet = workboob.add_sheet("合并表格")
    for i in range(font):#切分表格列表
        for g in wr:#切分行
            for wriw in range(0,len(g)):#切分列写入
                worksheet.write(fontt, wriw, g[wriw])
            fontt+=1#行数+1
        break
    workboob.save("合并表格.xls")#保存
def csv_open(csvv):#csv处理函数
    csv_file = csv.reader(open(csvv, 'r'))#打开csv文件
    # next(csv_file,None)
    for i in csv_file:#循环输出内容
        yi = list(i)#改变数值
        yi.insert(0, csvv)
        yi.insert(1, csvv)
        y.append(yi)
for li in x:#遍历本文件夹所有xls/xlsx文件
    if "xls" in li:#判断文件类型
        read(li)#将文件内容写入进表格
        print('已读取%s' % li)
    if "csv" in li:#判断文件类型
        csv_open(li)
        print('已读取%s' % li)
wir(len(y),y)#行数写入
print('---------------------')


打包后文件太大,直接上链接:https://pan.baidu.com/s/1gz5_Uh3_OfSJvlAB9hN5zg 提取码:5rx0


5/15更新后:
修复工作表无法完全合并完成问题
增加csv文件合并内容


5/15更新后的文件:链接:https://pan.baidu.com/s/1SpLlYPzuMp6-t8rJgZ2CCg 提取码:qwn3

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
王星星 + 1 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

1e3e 发表于 2020-5-14 16:19
a2556483812 发表于 2020-5-14 15:25
建议安装完后,检查一下环境变量,安装没问题的情况下,大多数都是环境变量那出了问题,我也是被坑过的人

cmhere切换到安装路径后装上了,不过实验合并表格内容不全
 楼主| a2556483812 发表于 2020-5-14 13:49
zdnyp 发表于 2020-5-14 13:48
新建一个虚拟环境,只安装用到的几个包,打包会小点。没有异常处理、没有打印提示

受教了,受教了,因为我不是专业IT男的,所以把下载的包都放一起了,难怪打包这么大
shanxiren 发表于 2020-5-14 13:38
zdnyp 发表于 2020-5-14 13:48
新建一个虚拟环境,只安装用到的几个包,打包会小点。没有异常处理、没有打印提示
adam2006 发表于 2020-5-14 14:22

感谢分享,学习了。
rbgaoshou 发表于 2020-5-14 14:26
谢谢分享了!
失业 发表于 2020-5-14 14:28
天天看见广告里面血 PYTHON 丢 excel 。看看真的那么神奇吗?
TwilightZ 发表于 2020-5-14 14:44
支持一下,希望楼主做的更好,加油!
 楼主| a2556483812 发表于 2020-5-14 14:49
TwilightZ 发表于 2020-5-14 14:44
支持一下,希望楼主做的更好,加油!

必须的,后续我会增加csv文件的,
 楼主| a2556483812 发表于 2020-5-14 14:50
失业 发表于 2020-5-14 14:28
天天看见广告里面血 PYTHON 丢 excel 。看看真的那么神奇吗?

我是自学的,自己会爬虫,到处爬资源,楼主是白p怪
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 18:22

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表