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
a2556483812 发表于 2020-5-14 15:25
建议安装完后,检查一下环境变量,安装没问题的情况下,大多数都是环境变量那出了问题,我也是被坑过的人
cmhere切换到安装路径后装上了,不过实验合并表格内容不全 zdnyp 发表于 2020-5-14 13:48
新建一个虚拟环境,只安装用到的几个包,打包会小点。没有异常处理、没有打印提示
受教了,受教了,因为我不是专业IT男的,所以把下载的包都放一起了,难怪打包这么大 感谢分享,收下了,正好用。 新建一个虚拟环境,只安装用到的几个包,打包会小点。没有异常处理、没有打印提示
感谢分享,学习了。 谢谢分享了! 天天看见广告里面血 PYTHON 丢 excel 。看看真的那么神奇吗? 支持一下,希望楼主做的更好,加油! TwilightZ 发表于 2020-5-14 14:44
支持一下,希望楼主做的更好,加油!
必须的,后续我会增加csv文件的,:lol 失业 发表于 2020-5-14 14:28
天天看见广告里面血 PYTHON 丢 excel 。看看真的那么神奇吗?
我是自学的,自己会爬虫,到处爬资源,楼主是白p怪{:1_918:}