python xls 转 xlsx
短信预约 -IT技能 免费直播动态提醒
1、目录下多个xls文件转换
import win32com.client as win32import os# 另存为xlsx的文件路径xlsx_file = r"C:\Users\HP\Desktop\新建文件夹\xlsx"xls_file = r"C:\Users\HP\Desktop\新建文件夹"for file in os.scandir(xls_file): suffix = file.name.split(".")[-1] if file.is_dir(): pass else: if suffix == "xls": excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Open(file.path) # xlsx文件夹路径\\文件名x wb.SaveAs(xlsx_file +"\\"+ file.name + "x", FileFormat=51) wb.Close() excel.Application.Quit()
2、增加界面化组件,让用户自行选择文件夹
import osimport win32com.client as win32import easygui as egdef pick_package(): # 打开windows窗口,选择一个文件夹,并返回文件夹路径 return eg.diropenbox()if __name__ == "__main__": package = pick_package() # 返回文件夹路径 xlsx_file = package + "\\xlsx" for file in os.scandir(package): # 获取后缀 suffix = file.name.split(".")[-1] if file.is_dir(): # 忽略文件夹 pass else: if suffix == "xls": excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Open(file.path) wb.SaveAs(xlsx_file + "\\" + file.name + "x", FileFormat=51) wb.Close() excel.Application.Quit()
自动创建文件夹
import osimport win32com.client as win32import easygui as egdef pick_package(): # 打开windows窗口,选择一个文件夹,并返回文件夹路径 return eg.diropenbox()if __name__ == "__main__": package = pick_package() # 返回文件夹路径 # 在当前文件夹下创建xlsx文件夹,用于存放转换的文件 if not os.path.exists(package+"\\" + "xlsx"): os.mkdir(package+"\\" + "xlsx") xlsx_file = package+"\\" + "xlsx" print(xlsx_file) for file in os.scandir(package): # 获取后缀 suffix = file.name.split(".")[-1] if file.is_dir(): # 忽略文件夹 pass else: if suffix == "xls": excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Open(file.path) wb.SaveAs(xlsx_file + "\\" + file.name + "x", FileFormat=51) wb.Close() excel.Application.Quit()
xlsx转xls
import osimport win32com.client as win32import easygui as egdef pick_package(): # 打开windows窗口,选择一个文件夹,并返回文件夹路径 return eg.diropenbox()if __name__ == "__main__": package = pick_package() # 返回文件夹路径 # 在当前文件夹下创建xls文件夹,用于存放转换的文件 if not os.path.exists(package+"\\" + "xls"): os.mkdir(package+"\\" + "xls") xlsx_file = package+"\\" + "xls" for file in os.scandir(package): # 获取后缀 suffix = file.name.split(".")[-1] # 如果后缀为xlsx,执行xlsx转xls if suffix == "xlsx": excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Open(file.path) name = file.name.split(".")[0] wb.SaveAs(xlsx_file + "\\" + name, FileFormat=56) wb.Close() excel.Application.Quit()
SaveAs另存为xlsx时需补后缀x,另存为xls时仅路径和文件名即可
来源地址:https://blog.csdn.net/Bianca427/article/details/130609441
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341