a2556483812 发表于 2020-5-14 13:30

python工作简化-合并工作簿

本帖最后由 a2556483812 于 2020-5-15 19:41 编辑

1、因为平时工作有大量的工作簿什么的需要合并,自己呢刚好学了些python,就利用python写了一个表格合并的程序分享给大家
2、可能是因为实力不足的原因,功能可能有不够完善的地方,多多谅解{:1_893:}
3、希望有帮到大家的地方4、考虑到有些人不会封装,所以呢最下面有打包的exe,但是不知道为啥pyinstaller打包出来的exe,杀毒软件都会误报,下面附上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)
    if os.path.exists(ghj):
      wqe += 1
      return f+str(wqe)+".xls"
def read(xls):#将表格内容写入列表--修复不能读取其他工作表的功能
    bm = xls.split('.')
    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)
            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

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文件的,:lol

a2556483812 发表于 2020-5-14 14:50

失业 发表于 2020-5-14 14:28
天天看见广告里面血 PYTHON 丢 excel 。看看真的那么神奇吗?

我是自学的,自己会爬虫,到处爬资源,楼主是白p怪{:1_918:}
页: [1] 2 3
查看完整版本: python工作简化-合并工作簿