使用python实现xls批量转为xlsx

利用win32库来实现

# -*- coding:utf-8 -*-
import os
import win32com.client as win32

#需要转换的数据目录
inputdir = u'D:\\python\\testdata\\excle'
outputdir = u'D:\\python\\testdata\\excle_output'
if not os.path.exists(outputdir):
    os.mkdir(outputdir)

# 三个参数:父目录;所有文件夹名(不含路径);所有文件名
for parent, dirnames, filenames in os.walk(inputdir):
    for fn in filenames:
        fn.split('.')[-1] == 'xls':
            filedir = os.path.join(parent, fn)

            excel = win32.gencache.EnsureDispatch('Excel.Application')
            wb = excel.Workbooks.Open(filedir)
            # xlsx: FileFormat=51
            # xls:  FileFormat=56
            wb.SaveAs((os.path.join(outputdir, fn + "x")), FileFormat=51)
            wb.Close()
            excel.Application.Quit()
原文地址:https://www.cnblogs.com/xlovepython/p/14199212.html